У меня есть две таблицы SQL Server с первичными ключами (PK) и внешним ключом (FK), связывающими две таблицы:
1) Table "Order"
OrderID, int, PK
AddressID, int, FK
...
2) Table "Address"
AddressID, int, PK
City, nvarchar(50)
...
Затем я создал (ADO.NET) Entity Data Modelиз этих двух таблиц.Теперь на моей (ASP.NET) веб-странице я разместил GridView с EntityDataSource.В моем GridView я хочу отобразить два столбца:
- OrderID
- Город (принадлежащий этому порядку и связанный с помощью ключа AddressID)
Какмогу ли я сделать это?Моя проблема: Когда я настраиваю Entity Data Source, я могу выбрать «EntitySetName», который может быть «Order» или «Address», но не оба, и при этом я не могу выбрать какой-либо тип отношений.Если я выберу «Order» в качестве EntitySetName, то в GridView я могу добавить столбцы
- OrderID
- Address
- Address.AddressID
При добавлении столбца «Адрес» отображаются пустые ячейки.Добавление «OrderID» и «Address.AddressID» отображает ожидаемые идентификаторы.Но как я могу добавить «Город» соответствующего адреса в мой GridView?
Заранее благодарен за помощь!
Редактировать: Уточнение:
Entity Framework создал класс «Заказ» и класс «Адрес», соответствующие таблицам базы данных.Класс «Порядок» имеет ссылку на объект «Адрес» в качестве свойства навигации, соответствующего отношению 1-n между таблицей «Адрес» и «Порядок».
В основном я хочу иметь столбец в моем GridView, который отображаетOrder.Address.City.Я попытался добавить связанное поле с «Address.City» в качестве поля данных в GridView, но это приводит к ошибке времени выполнения («нет такого свойства ...»).