相关疑难解决方法(0)

一个带有EntityDataSource的ASP.NET GridView中的两个相关数据库表的列

我有两个带有主键(PK)的SQL Server表和一个链接这两个表的外键(FK):

1) Table "Order"

OrderID, int, PK  
AddressID, int, FK
...

2) Table "Address"

AddressID, int, PK
City, nvarchar(50)
...
Run Code Online (Sandbox Code Playgroud)

然后我从这两个表中创建了一个(ADO.NET)实体数据模型.现在,在我的(ASP.NET)网页上,我将GridView与EntityDataSource放在一起.在我的GridView中,我想显示两列:

  • 订单ID
  • 城市(属于该订单并通过AddressID密钥链接)

我怎样才能做到这一点?我的问题是:当我配置实体数据源时,我可以选择"EntitySetName",它可以是"Order"或"Address",但不能同时选择,也不能选择任何类型的关系.如果我选择"Order"作为EntitySetName,那么在GridView中我可以添加列

  • 订单ID
  • 地址
  • Address.AddressID

添加"地址"列会显示空单元格.添加"OrderID"和"Address.AddressID"会显示预期的ID.但是如何将相关地址的"城市"添加到我的GridView?

提前感谢您的帮助!

编辑:澄清:

实体框架创建了一个类"Order"和一个与数据库表对应的类"Address"."Order"类引用"Address"对象作为导航属性,对应于Address和Order表之间的1-n关系.

基本上我想在我的GridView中有一个显示Order.Address.City的列.我试图将带有"Address.City"的绑定字段作为数据字段添加到GridView,但它会导致运行时错误("没有这样的属性......").

asp.net gridview ado.net-entity-data-model

19
推荐指数
1
解决办法
2万
查看次数