【问题标题】:Sharepoint WebPart Properties lost after redeploySharepoint WebPart 属性在重新部署后丢失
【发布时间】:2013-02-10 18:07:33
【问题描述】:

我有一个使用某些 webpart 属性(在本例中为字符串)的 sharepoint webpart。这些属性都可以按我的意愿工作,但是如果我对我们的 web 部件进行了更改并部署到服务器,现有的属性就会丢失。

经过简要阅读,我认为这可能与我的属性定义有关:

    public static string Exclusions;
    [Category("Extended Settings"),
    Personalizable(PersonalizationScope.Shared),
    WebBrowsable(true),
    WebDisplayName("Library Exclusions"),
    WebDescription("Enter any Libraries to exclude. Use '|' to separate.")]
    public string _Exclusions
    {
        get { return Exclusions; }
        set
        { Exclusions = value;}
    }

我想知道是否应该从这里删除“静态”。但是,当我这样做时,我不能再像以前那样使用此属性:

protected override void OnPreRender(EventArgs e)
        {

            ((HiddenField)this.FindControl("DocumentLibraryListingHiddenWebPartProperties")).Value = DocumentLibraryListing.DocumentLibraryListing.Exclusions;

        }

有什么建议可以在这里做什么吗?

【问题讨论】:

    标签: c# sharepoint sharepoint-2010 web-parts


    【解决方案1】:

    事实证明,丢失的设置/属性与字符串为静态有关。

    我将我的财产更改为:

    public string Exclusions;
    [Category("Extended Settings"),
    Personalizable(PersonalizationScope.Shared),
    WebBrowsable(true),
    WebDisplayName("Library Exclusions"),
    WebDescription("Enter any Libraries to exclude. Use '|' to separate.")]
    public string _Exclusions
    {
        get { return Exclusions; }
        set
        { Exclusions = value;}
    }
    

    此外,我必须在 CreateChildControls 方法中执行以下操作:

    protected override void CreateChildControls()
            {
                Control control = Page.LoadControl(_ascxPath);
                if (control!= null)
                {
                    ((MyUserControl)control).WebPart = this;
                }
                Controls.Add(control);
            }
    

    另外,在 webpart 的 ascx.cs 文件中,我必须在类定义的正下方添加:

    public MyWebPart WebPart { get; set; }
    

    最后我能够使用以下方法访问 OnPreRender 事件的值:

    this.WebPart.Exclusions
    

    欲了解更多信息,请访问此网站:NothingButSharepoint.com

    【讨论】:

      猜你喜欢
      • 2012-08-16
      • 2011-08-29
      • 1970-01-01
      • 2011-04-21
      • 2011-08-12
      • 2011-12-16
      • 2011-01-04
      • 2023-03-03
      • 2012-06-05
      相关资源
      最近更新 更多