Я использую технику TPH (таблица для иерархии) для отображения набора объектов.Entity Framework - ассоциация из производных объектов
DB Schema: Таблица UserGroupLabelSpreads с полями «UserId», «GroupId» и «LabelId» с некоторыми дополнительными общими полями.
DAL Объекты: - UserGroupLabelSpread абстрактный класс. - UserSpread с дискриминатором, имеющим только ненулевой UserId. - GroupSpread с дискриминатором, имеющим только ненулевой GroupId. - LabelSpread с дискриминатором, имеющим только ненулевой LabelId.
Мне удалось заставить эту работу работать, но когда я пытаюсь подключить сущность UserSpread к существующей сущности «Пользователь», я получаю следующую ошибку: Ошибка 1 Ошибка 3034: Проблема при отображении фрагментов начиная с строк 487, 554: два объекта с разными ключами отображаются в одну строку. Убедитесь, что эти два фрагмента отображения не отображают две группы объектов с перекрывающимися ключами в одну и ту же группу строк.
Я разобрался, чтобы понять, что проблема в том, что я дважды сопоставляю столбец UserId: один раз для условия дискриминатора и второй для ассоциации.
Я прав с моим предположением? Могу ли я заставить эту работу работать?
Thanks, Nir.
К сожалению, правильная ошибка: Ошибка Ошибка 3007: Проблема в картированию фрагментов, начиная с линии 242, 272: несырьевых-Key колонка (s) [UserId] в настоящее время отображаются в обоих фрагментов к различным концептуальным боковые свойства - несогласованность данных возможна, поскольку соответствующие концептуальные боковые свойства могут быть независимо изменены. – nirpi