|
|
|
Entity Framework: создание дополнительных свойств
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Недавно начал немного разбиратся в EF. Опишу ситуацию: Имеем базу данных: Первая таблица Domains: DomainId int IDENTITY(1,1) PRIMARY KEY Name nvarchar(50) Вторая таблица Addresses: AddressId int IDENTITY(1,1) PRIMARY KEY Name nvarchar(50) DomainId int REFERENCES Domains(DomainId) ON DELETE CASCADE ON UPDATE CASCADE Создаем для данных таблиц модель данных EF. Получаем два класса и переименовываем их в: Domain DomainId Name Addresses - колекция объектов Address Address AddressId Name Domain - объект Domain С этим все ясно и понятно. Теперь собственно, что нужно: А нужно показать полное имя адреса в GridView, т.е. <имя адреса>@<имя домена>. Вот что делаю для этого: Берем EntityDataSource: Код: plaintext 1. 2. 3. 4. Далее GridView: Код: plaintext 1. 2. Показывается все отлично. Но, например, нужно часто получать полный адрес. Можно в объект Address добавить свойство в другом файле (что бы дизайнер его не затирал): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И теперь, если мы имеем дело с Linq запросом то все просто: Код: plaintext 1. 2. А вот если продолжать использовать EntityDataSource, можно ли добратся до этого свойства? Выражение типа: Код: plaintext 1. 2. 3. 4. говорит, что нет этого FullName : [quote] "FullName" не является элементом типа myModel.Address в загруженных в данный момент схемах [/quote] Значит выход один - использовать Linq? Let the Force be with You... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2009, 19:06 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35840400&tid=1351928]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 346ms |

| 0 / 0 |
