Я пытаюсь использовать Enitity SQL для запроса данных, но если файл edmx в другом проекте будет создан, будет создано исключение. Ниже приведены мои тестовые шаги.Entity SQL не работает, если файл edmx в другом проекте
Создайте проект библиотеки классов и добавьте к нему файл edmx, создайте из базы данных.
Создайте консольное приложение, добавьте проект библиотеки классов для ссылки и скопируйте файл app.config в этот проект.
Написать код, как показано ниже
using (NorthwindEntities context = new NorthwindEntities()) { string queryString = @"SELECT VALUE cus FROM NorthwindEntities.Customers AS cus WHERE cus.ID > 10"; ObjectQuery<Customers> cusQuery = context.CreateQuery<Customers>(queryString); List<Customers> cusList = cusQuery.ToList(); }
Когда я запускаю проект консольного приложения, генерируется исключение: «ID" не является членом типа „NorthwindModel.Customers“ в загруженных в настоящее время схем ".
Кажется, схема не загружается в проект, у кого есть идеи? Дополнительный вопрос: в этом запросе я выбираю все свойства этого типа, если я только выбираю некоторые из свойств, как вернуть анонимный тип ObjectQuery?
Любые предложения ценятся.
Вы проверили, что сгенерированный 'NorthwindModel.Customer' действительно имеет полные колпачки' ID' недвижимость? – nemesv
Спасибо за ваш быстрый ответ. Да, файл edmx создается из базы данных, все свойства находятся в модели. – James
Какую версию EF вы используете? – nemesv