コンテンツ領域にアイテムのリストを表示したい (ページ リスト ブロックを使用してページのリストを表示しています)。コンテンツ領域にページ タイプをドラッグ アンド ドロップすると、「Castle.Proxy. ListingBlockProxy」.
以下は私のコードです....
HomeBlockPage.cs
public class HomeBlocksPage : SitePageData
{
[Display(Name = "Main Listing", Description = "A listing of news pages", GroupName = SystemTabNames.Content, Order = 315)]
public virtual ListingBlock MainListing { get; set; }
}
ビュー モデル クラス - ListingBlockModel.cs
public class ListingBlockModel
{
public ContentReference PageImage { get; set; }
public IEnumerable<SitePageData> Items { get; set; }
}
ListingBlock の Index.cshtml
@if (Model.Items != null) {
foreach (var item in Model.Items)
{
<div class="list">
<p><img src="@Url.ContentUrl(item.PageImage)"/></p>
<h3>@Html.PageLink(item)</h3>
@if (item.Property["MainBody"] != null)
{
@item.Property["MainBody"].Value
}
<hr />
</div>
} }
コンテンツ領域にアイテムのリスト (ページのリスト) を表示またはレンダリングするために、ページの部分テンプレートを作成しました。
PagePartialController.cs
[TemplateDescriptor(Inherited = true)]
public class PagePartialController : PartialContentController<HomeBlocksPage>
{
public override ActionResult Index(HomeBlocksPage currentContent)
{
return PartialView("/Views/Shared/PagePartials/PagePartial.cshtml",currentContent);
}
}
PagePartial.cshtml
@model WesleyanSite.Models.Pages.HomeBlocksPage
<div class="span12">
<a href="@Url.PageUrl(Model.LinkURL)">
@Model.MainListing
</a>
</div>
編集モードでページをコンテンツ領域にドラッグ アンド ドロップすると、「Castle.Proxies.ListingBlockProxy」のエラーが発生します。