我有一个名为City
的EF类(对应于数据库表)
public partial class
{
public int id { get; set; }
public string Title { get; set; }
public Nullable<int> PostalCode { get; set; }
public string Edit { get; set; }
public string Delete { get; set; }
public string status { get; set; }
}
我有另一个名为V_STATUS
的EF类,它对应于数据库视图:
public partial class V_STATUS
{
public string ID { get; set; }
public string TITLE{ get; set; }
}
在创建网格的MVC视图中,我想显示来自title
V_STATUS
的{{1}} status
来自City
:
<div class="col-lg-12 col-lg-offset-0 col-md-12 col-md-offset-0 col-sm-12 col-sm-offset-0 col-xs-12 col-xs-offset-0 form-group">
@Html.Grid(Model).Columns(columns => {
columns.Add(m => m.Title).Titled("Title");
columns.Add(m => m.PostalCode ).Titled("PostalCode");
// INSTEAD OF m=> m.status to be shown title from v_status
columns.Add(m=> m.status).Titled("Status");
columns.Add().Encoded(false).Sanitized(false).SetWidth(50).RenderValueAs(r =>
@Html.ActionLink("Edit", "UpdateCity", new { id = r.id })
);
columns.Add().Encoded(false).Sanitized(false).RenderValueAs(r =>
@Html.ActionLink("Delete", "DeleteCity", new { id = r.id })
);
}).WithPaging(5).Sortable().Filterable().WithMultipleFilters()
</div>
答案 0 :(得分:0)
您需要通过将状态属性更改为City
属性来包含V_Status
和virtual
之间的关系。
包括虚假财产:
public virtual V_STATUS Status { get; set; }
代码:
public partial class City
{
//Existing propertites
public int id { get; set; }
public string Title { get; set; }
public Nullable<int> PostalCode { get; set; }
public string Edit { get; set; }
public string Delete { get; set; }
//Modified property
public virtual V_STATUS Status { get; set; }
}
我们在这里寻找用户界面:
您的代码:
// INSTEAD OF m=> m.status to be shown title from v_status
columns.Add(m=> m.status).Titled("Status");
试试这个:
columns.Add(m=> m.Status.Title).Titled("Status");//included navigation property Title
注意:
ignore
来自City的财产
流畅的API或数据注释。 在UI中显示导航属性值的参考:
So Question
如果有帮助,请考虑接受答案。