Я новичок в Entity Framework и пытаюсь работать с POCO. Большинство учебных пособий кажутся сначала база данных с сгенерированным кодом ИЛИ сначала код с POCO. Не так много (хотя есть несколько), которые имеют дело с Database First с помощью POCO.
Моя установка: я пытаюсь использовать EF в существующем проекте, который немного больше. Чтобы просто ответить на мой вопрос, я попытался выполнить следующую настройку.
У меня есть проект, содержащий одну модель EDMX, подключенную к одной таблице в локальной базе данных. Затем я скопировал сгенерированный код из файла Model.Designer.cs в другой файл .cs в проекте. . Затем я установил для параметра Стратегия создания кода значение Нет. Затем я создаю класс контекста, как показано ниже.
public class LocalDB : ObjectContext
{
public const string ConnectionString = "name=LocalEntities";
public const string ContainerName = "LocalEntities";
public ObjectSet<Product_Listing> OpenList;
public LocalDB() : base(ConnectionString, ContainerName)
{
OpenList = CreateObjectSet<Product_Listing>(); //InvalidOperationException!!
}
}
Проблема. Когда я нажимаю на конструктор, я получаю следующее исключение:
InvalidOperationException. «Не удалось найти информацию о сопоставлении и метаданных для EntityType «EFFTrial.LocalAccess.Product_Listing».
Буду признателен за любую помощь. Книга, которая у меня есть (Лермана), связана с EF-4, но я думаю, что мой код на VS 2010 и .Net 4 поддерживает EF-6. Как я уже упоминал выше, я новичок, поэтому не настраиваюсь на версии, пока могу обойтись без .Net 4.5.
ObjectContext
иObjectSet
намеренно или только потому, что следуете книге, написанной дляEF4
? - person Leron_says_get_back_Monica   schedule 10.03.2014