2016-09-06 8 views
1

ブログの投稿のリストはオーチャードCMSです。これは私のコードです:オーチャードCMSのブログ記事をリンクしますか?

@{ 
    IEnumerable<object> 
    blogPosts = Model.ContentItems; 
    Model.ContentItems.Classes.Add("content-items"); 
    Model.ContentItems.Classes.Add("blog-posts"); 
} 

<div class="row"> 
    @foreach (var item in blogPosts) 
    { 
     <div class="col-md-4 col-sm-6"> 
      <div> 
       <div class="blog-seg post-item seg"> 
        <div>@Display(item)</div> 
       </div> 
      </div> 
     </div> 
    } 
</div> 

それぞれDIVに投稿へのリンクがありますようにします。これどうやってするの?

+1

Html.ItemDisplayLink @使用 '(項目)' – Xceno

+0

を: 'System.Web.Mvc.HtmlHelper 'には 'ItemDisplayLink'の定義が含まれていません。テンションメソッドのオーバーロード 'Orchard.Mvc.Html.ContentItemExtensions.ItemDisplayLink(System.Web.Mvc.HtmlHelper、Orchard.ContentManagement.IContent)'に無効な引数があります – balouchi

答えて

2

コンテンツ項目のリンクを表示するには、次の使用します。私はこのエラーを持っている

@using Orchard.ContentManagement; 

@{ 
    IEnumerable<dynamic> 
     blogPosts = Model.ContentItems.ContentItems; 
    Model.ContentItems.Classes.Add("content-items"); 
    Model.ContentItems.Classes.Add("blog-posts"); 
} 

<div class="row"> 
    @foreach (var item in blogPosts) { 
     <div class="col-md-4 col-sm-6"> 
      <div> 
       <div class="blog-seg post-item seg"> 
        <div> 
         @Html.ItemDisplayLink(item.ContentItem as IContent) 
        </div> 
       </div> 
      </div> 
     </div> 
    } 
</div> 
+0

エラーが発生しました。 'System.Web.Mvc.HtmlHelper ' 'ItemDisplayLink'の定義と最適な拡張メソッドオーバーロード 'Orchard.Mvc.Html.ContentItemExtensions.ItemDisplayLink(System.Web.Mvc.HtmlHelper、Orchard.ContentManagement.IContent)'に無効な引数が含まれています – balouchi

+0

同じエラーがありますContentItemが見つかりません – balouchi

+0

このエラーが発生しましたオブジェクト参照がオブジェクトのインスタンスに設定されていません。 – balouchi

0
@using Orchard.ContentManagement; 
@{ 
IEnumerable<dynamic> 
    blogPosts = Model.ContentItems; 
Model.ContentItems.Classes.Add("content-items"); 
Model.ContentItems.Classes.Add("blog-posts"); 

}

<div class="row"> 
@foreach (var item in blogPosts) 
{ 
    IContent contentItem = item.ContentItem; 
    var metadata = contentItem.ContentItem.ContentManager.GetItemMetadata(contentItem); 
    string alias = metadata.Identity.Get("alias"); 

    <div class="col-md-4 col-sm-6"> 
     <div> 
      <div class="blog-seg post-item seg"> 
       <a href="~/@alias" style="display:block;">@Display(item)</a> 
      </div> 
     </div> 
    </div> 
} 

関連する問題