2017-11-28 10 views
-1

私は、このモデルカテゴリーモデル参照自体は

public partial class CATEGORY 
{ 
    public long CATEGORY_ID { get; set; } 
    public string CATEGORY_NAME { get; set; } 
    public Nullable<int> PARENT_ID { get; set; } 
} 

私はCATEGORY_IDから親カテゴリ(PARENT_ID)を作成する必要があります。テーブルを自分自身で参照するにはどうしたらいいですか、リストビューでもIDの代わりにCATEGORY_NAMEを表示します。

ビュー

<td> 
    @Html.DisplayFor(modelItem => item.CATEGORY_ID) 
</td> 
<td> 
    @Html.DisplayFor(modelItem => item.CATEGORY_NAME) 
</td> 
<td> 
    @Html.DisplayFor(modelItem => item.PARENT_ID) 
</td> 

コントローラ

public ActionResult Index() 
{ 
    IEnumerable<CATEGORIES> categories = _categoriesService.GetCategories(); 
    return View(categories); 
} 

答えて

0

あなたはCategoryテーブルにタイプCategoryの仮想プロパティを追加することができます

public class Category 
{ 
    public int Id { set; get; } 
    public string Name { set; get; } 
    public int? ParentId { get; set; } 
    public virtual ParentCategory Parent { set; get; } 
} 

ありませんデータを保存することができ、UIにはParentプロパティを使用して、Nameプロパティにアクセスすることができます。

@model IEnumerable<YourNamespace.Category> 
<table class="table"> 
    @foreach (var item in Model) 
    { 
     <tr> 
      <td>@item.Id</td> 
      <td>@item.Name</td> 
      <td>@item.ParentId</td> 
      <td> 
       @(item.Parent != null ? item.Parent.Name : "") 
      </td> 
     </tr> 
    } 
</table>