У меня есть некоторые представления, которые я хочу использовать EF 4.1 для запроса.Это конкретные оптимизированные представления, в которых не будет ключей для обсуждения;не будет никаких удалений, обновлений, просто хороший выбор.
Но EF хочет, чтобы ключ был установлен на модели.Есть ли способ заставить EF двигаться дальше, не о чем беспокоиться?
Подробнее
Основная цель этого - запросить набор представленийкоторые были оптимизированы по размеру, параметрам запроса и соединениям.Базовые таблицы имеют свои PK, FK и так далее.Он проиндексирован, статистизирован (что за слово?) И оптимизирован.
Я бы хотел иметь класс, подобный (это гораздо меньшая и более простая версия того, что у меня есть ...):
public MyObject //this is a view
{
Name{get;set}
Age{get;set;}
TotalPimples{get;set;}
}
и хранилище, построенное из EF 4.1 CF, где я могу просто
public List<MyObject> GetPimply(int numberOfPimples)
{
return db.MyObjects.Where(d=> d.TotalPimples > numberOfPimples).ToList();
}
Я мог бы выставить ключ, но какова реальная цель отображения естественного ключа из 2 или 3 столбцов?Это никогда не будет использовано?
Текущее решение
Похоже, что их решение EF CF не будет, я добавил в модель сложный ключ и выставляю егов модели.В то время как это идет «в ногу» с тем, что можно ожидать от «хорошо спроектированной» модели БД, в данном случае, IMHO, она добавила только конструктор моделей, больше логики, больше байтов по проводам и дополнительные свойства накласс.Они никогда не будут использованы.