Я изучаю Entity Framework 4 из книги.
И я пытаюсь сделать несколько запросов с помощью Entity SQL следующим образом:
using (var context = new BAEntities())
{
string str = "SELECT VALUE c " +
"FROM BAEntities.Contacts " +
"AS c " +
"WHERE c IS NOT OF(BAModel.Customer)";
ObjectQuery<Contact> qry = context.CreateQuery<Contact>(str);
Console.WriteLine(qry.Count());
}
Цель моего запроса - взять все объекты типа контакта, но не типа клиента.
Где Клиент наследует от Контакта
Но я получил следующую ошибку:
Тип 'BAModel.Customer' не найден. Убедитесь, что необходимые схемы
загружены и что пространства имен импортированы правильно. Рядом с именем типа, строка 1,
столбец 64.
Но, если я сделаю запрос с LINQ to Entities, как это:
ObjectQuery<Contact> qry = context.Contacts.Where(c => !(c is Customer));
тогда программа может работать правильно.
Итак, почему в Entity SQL BAModel.Customer
не найдено, тогда как я запускал код в том же проекте, в котором находится модель.
Пожалуйста, помогите мне в этом.
Заранее спасибо.