LINQ2Entities и Oracle: сравнение на строковом /nclob
У меня есть Entity с именем Product в Entity Framework, который имеет поле имени, которое имеет тип String. Это преобразуется в столбец NCLOB в Oracle с помощью программного обеспечения Oracle, установленного для Visual Studio. Я могу вставить несколько продуктов.
Теперь я хочу сделать, например, LINQ-запрос, где я выбираю один объект на основе его имени:
Product p1 = ctx.ProductSet.Single(p => p.Name == "FIETS");
Это приводит к исключению, которое говорит мне, что ошибка ORA-00932 (несовместимые типы данных). Что я могу сделать, чтобы решить эту проблему?
1 ответ
Вы должны беспокоить Oracle по этому поводу. Это должно работать. Пока это не так, их провайдер сущностей не работает.
Помимо этого показа, насколько сломана их поддержка EDM:
Действительно ли необходимо иметь поле имени типа nclob? Разве nvarchar не будет достаточно?