【问题标题】:Access Webpart properties from a custom class in Kentico从 Kentico 中的自定义类访问 Webpart 属性
【发布时间】:2018-03-27 10:29:54
【问题描述】:

我有一个名为 OverrideMacros.ascx 的 Webpart 和一个名为“MetaTagReplace”的公共属性

public partial class CMSWebParts_VLine_Management_OverrideMacros : CMSAbstractWebPart
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    //Swtich to check whether to replace exiting <meta> tags with modified <meta> tags.
    public bool MetaTagReplace { get; set; } 

}

我想从 App_Code 中的自定义类访问此 Web 部件属性“MetaTagReplace”。我怎样才能做到这一点?以下是我到目前为止所做的。

    CMSAbstractWebPart overrideMacrosWebPart = RequestStockHelper.GetItem("OverrideMacros") as CMSAbstractWebPart;
  if (overrideMacrosWebPart != null)
    {

    }

overrideMacrosWebPart 始终为空

【问题讨论】:

  • 从架构设计的角度来看,从另一个 Web 部件、页面或类访问 Web 部件的属性是不正确的 - App_Code 中的类不能依赖于某些 Web 部件!

标签: c# asp.net web-parts kentico


【解决方案1】:

您必须引用完整的类名才能访问该属性。 CMSWebParts_VLine_Management_OverrideMacros。此外,您的 webpart 中的属性编码不正确。如果你想利用 Kentico 中的 UI 功能,它应该是这样的

get {return ValidationHelper.GetString(GetValue("PropertyName"), ""); }

也许 read the Kentico documentation 在开发 webparts 上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-18
    相关资源
    最近更新 更多