Я использую LINQ в качестве ORM в проекте веб-приложения, использующем VS2010. Я определил ER в базе данных SQL и просто перетащил таблицы базы данных в ORM. Таблица переноса имеет 4 взаимосвязи с таблицей больниц с 4 различными столбцами. Один из столбцов - FK, int, а не null. Остальные три FK, int, null. В DBML класс Transfer имеет 4 ассоциации с классом Hospital. Ассоциация с требуемым Transfer.Hospital (FK, int, not null) имеет следующие свойства.
Cardinality: OneToMany
Child Property: True
Access: Public
Inheritance Modifier: (None)
Name = Transfers1
Parent Property
Access: Public
Inheritance Modifier: (None)
Name: HospitalSrcOrDest
Participating Properties: Hospital.HospitalID -> Transfer.Hospital
Unique: False
Модель просмотра, используемая на странице просмотра, имеет свойство Transfer типа Transfer. Model.Transfer.Hospital всегда имеет целочисленное значение. Однако Model.Transfer.HospitalSrcOrDest в следующем скрипте страницы всегда имеет значение null. Разве HospitalName не должен быть автоматически получен через ассоциацию Hospital_Transfer1? Спасибо.
<%: Model.Transfer.HospitalSrcOrDest != null ? Model.Transfer.HospitalSrcOrDest.HospitalName : string.Empty%>