我可以使用EntityDataSource将3个实体相关表中的数据显示到Gridview吗? 有可能吗?
例如:
货币表
ID - 1
NAME - JPY
票务表
ID - 1
NameId - 2
Time - 08:00AM
用户表
ID - 2
CurrencyID - 1
Name - JESSY
我想在gridview中显示:
JESSY JPY 8:00AM
有可能吗?
答案 0 :(得分:1)
您可以选择用户并获取相关货币实体的名称以及关联的故障单实体的时间。只要设置了外键和关联,就可以使用导航属性并创建这样的匿名对象。然后,将结果放入gridview。
var results = Users.Select(x =>
new {
Name = x.name,
Currency = x.Currency.Name,
Time = x.Ticket.Time
}).ToList();
答案 1 :(得分:1)
你可以通过join来实现。在连接之后将连接结果集放在容器上并用网格绑定此容器
在你的所有表格中,一列是常见的ID - 1
var result=from p in User
join q in Ticket on p.ID equals q.ID
join r in Currency on p.ID equals r.ID
select new {p.name,r.Name,q.Time}//Here you can get any column of ralated three tables
grid.Datasource =结果
希望上面的语法,会给你一个想法。如何解决你的问题。