Asp.net mvc 4 Orchard CMS小部件中未呈现自定义部件
横杆: 我使用的是Orchard 1.8,我已经构建了一个附加到小部件的部分。这是一个基本部分,但我在呈现模板时遇到问题。这是我的密码: 模型 安置 小部件渲染良好,但零件模板根本不渲染。当我创建跟踪时,小部件下看不到appswidgetpart,但当我检查模型时,它就在那里 我还调试并附加了驱动程序中的显示功能,没有出现任何问题。我在日志中也没有看到任何错误Asp.net mvc 4 Orchard CMS小部件中未呈现自定义部件,asp.net-mvc-4,orchardcms,orchardcms-1.8,Asp.net Mvc 4,Orchardcms,Orchardcms 1.8,横杆: 我使用的是Orchard 1.8,我已经构建了一个附加到小部件的部分。这是一个基本部分,但我在呈现模板时遇到问题。这是我的密码: 模型 安置 小部件渲染良好,但零件模板根本不渲染。当我创建跟踪时,小部件下看不到appswidgetpart,但当我检查模型时,它就在那里 我还调试并附加了驱动程序中的显示功能,没有出现任何问题。我在日志中也没有看到任何错误 有什么想法吗?我不确定您是否在驱动程序中正确显示了形状。我通常是这样做的 protected override DriverResult
有什么想法吗?我不确定您是否在驱动程序中正确显示了形状。我通常是这样做的
protected override DriverResult Display(AppsWidgetPart part, string displayType, dynamic shapeHelper)
{
return ContentShape(
"Parts_AppsWidget",
() => shapeHelper.Parts_AppsWidget(ContentItem: part.ContentItem));
}
你好像少了一个训练员。还有,如果记录类是空的,为什么还要有记录类?
public class AppsWidgetDriver : ContentPartDriver<AppsWidgetPart>
{
protected override DriverResult Display(AppsWidgetPart part, string displayType, dynamic shapeHelper)
{
return ContentShape("Parts_AppsWidget",
() => shapeHelper.Partial(
TemplateName: "Parts/AppsWidget"
));
}
}
#region Define Apps Widget
ContentDefinitionManager.AlterPartDefinition(
typeof(AppsWidgetPart).Name, cfg => cfg.Attachable());
ContentDefinitionManager.AlterTypeDefinition("AppsWidget", cfg => cfg
.WithPart("WidgetPart")
.WithPart(typeof(AppsWidgetPart).Name)
.WithPart("CommonPart")
.WithSetting("Stereotype", "Widget"));
#endregion
#region Create Apps Widget
var appsWidget = _widgetsService.CreateWidget(homepageLayer.Id, "AppsWidget", "Apps", "5", "AfterContent");
appsWidget.RenderTitle = true;
appsWidget.Name = "apps";
_contentManager.Publish(appsWidget.ContentItem);
#endregion
<Place Parts_AppsWidget="AfterContent:5" />
protected override DriverResult Display(AppsWidgetPart part, string displayType, dynamic shapeHelper)
{
return ContentShape(
"Parts_AppsWidget",
() => shapeHelper.Parts_AppsWidget(ContentItem: part.ContentItem));
}