Настройка EntityFramework 6 и WCF Data Services 5.6

1

Я пытаюсь настроить проект для Entityframwork 6 и служб данных WCF 5.6. Я просмотрел эту страницу

Я установил пакет NuGet.

Install-Package Microsoft.OData.EntityFrameworkProvider -Pre

После этого я попытался использовать ADO.Net Entity Data Model с помощью Wizard. Это не позволяет мне идти дальше. Ошибка такая

Ваш проект ссылается на последнюю версию EF; Однако и поставщик базы данных EF, совместимый с этой версией, не удалось найти для вашего подключения к данным. Выйдите из этого мастера, установите совместимый поставщик и перестройте проект перед выполнением этого действия. и ссылку: http://msdn.microsoft.com/en-us/data/jj730568

Моя база данных - это Oracle 11g, и я использую DevArt, чья версия Oracle pro 8.0.146.0

Я думал, что это некоторая проблема с DotConnect, которую я проверил у поставщика, они дали мне эту ссылку

Я тоже это сделал. Но успеха нет.

Когда я пытаюсь добавить DevArt Data Model * edml, он также дает мне Ef 6. поэтому, когда создайте этот edm и попробуйте службу данных WCF, дайте мне сообщение об исключении:

Свойство EntityState для типа 'Models.USER' не является допустимым свойством. Убедитесь, что тип свойства является общедоступным типом и поддерживаемым примитивным типом или типом сущности с допустимым ключом или сложным типом. '. Подробнее см. Журналы сервера. Трассировка стека исключений: в System.Data.Services.Providers.ReflectionServiceProvider.BuildTypeProperties

Как я могу установить их вместе?

Теги:
entity-framework
wcf-data-services

2 ответа

2
Лучший ответ

Entityframework 6, Служба данных WCF 5.6, DevArt oracle Connector

Теперь дайте мне Ans для моих вопросов.

  1. Entityframework 6 & WCF Data Serice не работала с первого дня. Почему сложные зависимости EF 6 & Data Services 5.6.
  2. DevArt Entity Wizard Создайте модель данных Entities с EntityObject, и я не понимаю, почему почему-то не работает с DataService.

Итак, я последовал за упомянутыми ссылками как заключительные слова http://blogs.msdn.com/b/odatateam/archive/2013/10/02/using-wcf-data-services-5-6-0-with-entity-framework -6.aspx? Перенаправление = истина

  1. создал новый проект Blank MVC для DataService 5.6
  2. Установите EF 6 с менеджером пакетов NuGet.
  3. установленный пакет установки Microsoft.OData.EntityFrameworkProvider -Version 1.0.0-alpha2
  4. Создайте DataModel с DevArt EntityWizad для EF 6 выберите шаблон DbContext (не делайте, почему он все еще записывает код с помощью ObjectContext, DbContext
  5. Удалить вручную код генерируемого объекта ObjectContext.
  6. Добавить службу данных WCF 5.6 Для мастера
  7. Изменить DataService на EntityFrameworkDataService
  8. Зарегистрировать поставщика организации http://blog.devart.com/entity-framework-6-support-for-oracle-mysql-postgresql-sqlite-and-salesforce.html

    Полагаю, сложная зависимость dll - это препятствие для пересечения. Более подробно вы читаете ниже темы. (Ооппс.. У меня нет репутации, поэтому я не могу размещать больше ссылок. Извините)

Показать ещё 1 комментарий
0

... "В вашем проекте приведена последняя версия Entity Framework, однако поставщик данных Entity Framework, совместимый с этой версией, не найден для вашего подключения к данным. Выйдите из этого мастера, установите совместимый драйвер и перестройте проект перед выполнением этого действие"...

При работе с EDM Designer вы должны добавить регистрацию EF-провайдера в *.config перед добавлением в проект новой модели данных Entity Data ADO.NET. Образец для dotConnect для Oracle доступен здесь: http://blog.devart.com/entity-framework-6-support-for-oracle-mysql-postgresql-sqlite-and-salesforce.html

Entity Developer добавляет эту регистрацию EF-провайдера в *.config автоматически. Мы рекомендуем использовать Entity Developer (Devart Entity Model, *.edml) вместо EDM Designer (ADO.NET Entity Data Model, *.edmx), потому что он настроен для работы с Oracle и имеет расширенную функциональность: http://www.devart.com/entitydeveloper/ed-vs-edm.html.

... Сообщение об исключении: "Свойство EntityState в типе" Models.USER "не является допустимым свойством. Убедитесь, что тип свойства является общедоступным типом и поддерживаемым примитивным типом или типом сущности с допустимым ключом или сложным типом.

Пожалуйста, присылайте нам (поддержка в devart * com) небольшого тестового проекта, с помощью которого можно было бы воспроизвести ошибку, чтобы мы могли более подробно изучить ее и найти решение для вас.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню