【发布时间】:2011-01-18 01:38:35
【问题描述】:
我有两个 SQL Server 表,主键 (PK) 和外键 (FK) 链接这两个表:
1) Table "Order"
OrderID, int, PK
AddressID, int, FK
...
2) Table "Address"
AddressID, int, PK
City, nvarchar(50)
...
然后我从这两个表中创建了一个 (ADO.NET) 实体数据模型。 现在在我的(ASP.NET)网页上,我放置了一个带有 EntityDataSource 的 GridView。在我的 GridView 中,我想显示两列:
- 订单编号
- 城市(属于该订单并由 AddressID-key 链接)
我该怎么做?我的问题是:当我配置实体数据源时,我可以选择一个“EntitySetName”,它可以是 “订单”或“地址”,但不能同时选择两者,我也不能选择任何一种关系。如果我选择“订单”作为 EntitySetName 然后在 GridView 我可以添加列
- 订单号
- 地址
- 地址.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