Нечувствительные к регистру ключи сущностей - PullRequest
0 голосов
/ 30 ноября 2010

У меня есть представление vwCountyStateJurisdiction со столбцами:

State varchar(2) PK
County varchar(20) PK
Jurisdiction varchar(20) PK
JurisdictionName varchar(100)

(эти ключи не отображаются, а добавляются к объекту в EF)

В EFпытаюсь добавить ассоциацию из таблицы свойств в это представление.Я добавляю ссылочное ограничение, сопоставляю свойства из таблицы свойств с тремя ключевыми полями в представлении и пытаюсь выполнить запрос.Проблема заключается в том, что эти строковые ключи чувствительны к регистру, когда свойство пытается загрузить связанный объект представления.Когда регистр совпадает, он загружается нормально, в противном случае я получаю нули.

Есть ли ЛЮБОЙ способ сделать так, чтобы регистр не учитывался?

Нет необходимости говорить, что изменение базы данных не вариант.

Спасибо

1 Ответ

1 голос
/ 30 ноября 2010

Вы можете попробовать следующий подход, но учтите, что он довольно трудоемкий и длительный.
Создайте DefiningQuery для каждой сущности, у которой есть первичный ключ, который следует сравнивать в случае нечувствительности к регистру.Эти запросы должны возвращать Upper (keycolumn) вместо keycolumn (то же самое для зависимых объектов).
Обратите внимание, что этот подход остается только для чтения, пока вы не создадите набор хранимых процедур для вставки, обновления и удаления для каждой сущности, которую выопределили запрос для.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...