Проблемы с Entity Framework и EntitiyDataSource - PullRequest
2 голосов
/ 09 февраля 2012

У меня простой сценарий:

  • Веб-проект (C #) с добавленной dll-ссылкой на приведенный ниже проект DataSource.
  • Отдельный проект DataSource (библиотека классов), в который я добавил файл edmx и сгенерировал POCO с помощью DbContext Generator.

Действительно, ничего особенного. Я думаю, что каждое учебное видео на YouTube, которое я видел в Entity Framework, делает что-то простое.

Я обнаружил, что EntityDataSource просто не работает. Я получаю ряд сообщений об ошибках, и я действительно не вижу шаблон, когда они появляются:

Вот некоторые из них:
- Невозможно загрузить указанный источник метаданных
- Недопустимая схема, и типы не могут быть загружены, поскольку сборка содержит EdmSchemaAttribute ... загрузка по имени и атрибуту недопустима.

Пару раз, не знаю как, мне удалось обойти эту ошибку, в этом случае я получаю ошибку CLR при попытке выполнить простую страницу с источником данных и gridview (ничего не было закодировано)

Конец, чтобы добавить к проблеме ... Я ссылаюсь на другой проект DataSource таким же образом. Я прекрасно могу установить этот EntityDataSource без ошибок выше. Но когда я нажимаю Обновить схему, я получаю сообщение об ошибке "Не удалось найти тип CLR для MyEntity.

Что здесь не так.

Спасибо

1 Ответ

0 голосов
/ 17 февраля 2013

Я получал сообщение об ошибке EdmSchemaAttribute, используя EF 5.0 и WCF Data Services 5.2.0.Это была служба данных, использующая класс DbContext, но класс DbContext был в той же сборке, что и некоторые файлы EDMX и код на основе ObjectContext, сгенерированный из файлов EDMX.

Исправлениедля меня было отделить код EF с первым кодом от кода EF с первым моделью (который использует ObjectContext и генерирует код с атрибутом [EdmSchema]).Переместив код первого кода в отдельную сборку, сообщение об ошибке исчезло и все работает.

Надеюсь, это поможет.

...