2012-05-21 2 views
0

Я пытаюсь переключить модель, чтобы использовать драйвер DevArt dotConnect. Это на самом деле работало до этого, но, похоже, оно вернулось обратно к драйверам .NET .NET по умолчанию после того, как я сгенерировал модель.Работает ли Visual Studio 2010 EDMX Designer с DevArt dotConnect?

Что я сделал открыть .edmx файл в блокноте и изменения:

<Schema Provider="Oracle.DataAccess.Client" ProviderManifestToken="11.2" ...> 

To:

<Schema Provider="Devart.Data.Oracle" ProviderManifestToken="Ora11g" ...> 

Однако, когда я затем попытаться обновить модель из базы данных, я получаю сотни погрешностей, аналогичных:

Ошибка 18 Ошибка 40: номер типа не указан с пространством имен или псевдоним. Только примитивные типы могут использоваться без квалификации.

Они происходят на линиях, таких как:

<Property Name="ROLEID" Type="number" Nullable="false" /> 

Я считаю, что водитель dotConnect хочет меня использовать .NET примитивным Decimal вместо типа Oracle number. Тем не менее, исправление этих ошибок потребовало бы, чтобы я изменил сотни строк, плюс это просто исчезнет в следующий раз, когда я обновлю модель.

Мой вопрос:

Может встроенный VS2010 дизайнера быть сделано для работы с драйвером DevArt dotConnect Oracle? Или это единственный способ создать правильный синтаксис для использования дизайнера DevArt?

ответ

0

Я уверен, что выяснил проблему.

Модель была сопоставлена ​​с источником данных, в котором использовался драйвер ADO.NET , а не драйвер dotConnect.

Я не смог найти хороший способ изменить базовый драйвер базы данных для модели, поэтому я удалил источник данных и создал новый с тем же именем. Это, похоже, устранило проблему, и теперь типы данных отображаются правильно в файле EDMX.

У меня теперь есть куча других вопросов, но я считаю, что это не связано с этой проблемой.