2013-04-08 58 views
2

通过Kendo UI获得了一个MVC4实体框架数据库第一个项目。在Kendo UI网格中显示外部数据

我说我在显示网格模型看起来像下面:

public partial class RuleEntry 
{ 
    public RuleEntry() 
    { 
     this.RuleEntriesCases = new HashSet<RuleEntriesCas>(); 
    } 
    [Key] 
    public int ID { get; set; } 
    public string Country { get; set; } 
    public Nullable<int> Family { get; set; } 
    public Nullable<int> IP { get; set; } 
    public string RuleKey { get; set; } 
    public Nullable<int> Status { get; set; } 
    public string Title { get; set; } 

    public virtual Country Country1 { get; set; } 
    public virtual Family Family1 { get; set; } 
    public virtual IP IP1 { get; set; } 
    public virtual RuleStatus RuleStatus { get; set; } 
    public virtual ICollection<RuleEntriesCas> RuleEntriesCases { get; set; } 
} 

属性Country是一个“SE”,是一个外键的表“国家”,这将包含名称, “瑞典”。该国模型是这样的:

public partial class Country 
{ 
    public Country() 
    { 
     this.RuleEntries = new HashSet<RuleEntry>(); 
    } 
    [Key] 
    public string Code { get; set; } 
    public string Name { get; set; } 

    public virtual ICollection<RuleEntry> RuleEntries { get; set; } 


} 

我想与所有的RuleEntry数据,但在相应的外键名称的表格,此刻只有密钥节目。 我的电网代码如下:

@(Html.Kendo().Grid(Model)  
.Name("Grid") 
.Columns(columns => 
{ 
    columns.Bound(p => p.Country); 
    columns.Bound(p => p.Family); 
    columns.Bound(p => p.IP); 
    columns.Bound(p => p.RuleKey); 
    columns.Bound(p => p.Status); 
    columns.Bound(p => p.Title); 

}) 
.Groupable() 
.Sortable() 
.Scrollable(s => s.Height("auto")) 
.Filterable() 
.ColumnMenu()) 

我该怎么做?在模型,控制器或视图中?

感谢

回答

2

在RuleEntry类,增加对国家1 ForeignKey的属性如下:

[ForeignKey("Country")] 
public virtual Country Country1 { get; set; } 

在网格中,使用columns.Bound(p => p.Country1.Name);

+0

谢谢!奇迹般有效 :) – 2013-04-08 09:59:43