我刚刚为 EF4 安装了 POCO 模板。我的模型中有一个实体AnnouncementText,并且 T4 文件似乎已正确生成。当我访问自动生成的属性时,尝试访问这个新实体会引发以下错误MyObjectContext.AnnouncementTexts
:
InvalidOperationException:找不到实体类型“MyNamespace.AnnouncementText”的映射和元数据信息。
POCO上的属性AnnouncementText
似乎与数据库中的列匹配,并且我没有更改任何自动生成的代码。
堆栈跟踪是:
at System.Data.Objects.ObjectContext.GetTypeUsage(Type entityCLRType)
at System.Data.Objects.ObjectContext.GetEntitySetForNameAndType(String entitySetName, Type entityCLRType, String exceptionParameterName)
at System.Data.Objects.ObjectContext.CreateObjectSet[TEntity](String entitySetName)
at MyNamespace.MyObjectContext.get_AnnouncementTexts() in C:\<snip>\MyObjectContext.Context.cs:line 65
at MyNamespace.Class1.Main() in C:\<snip>\Class1.cs:line 14
如果我.tt
从解决方案中删除文件并在模型上启用代码生成,我可以毫无问题地访问该属性。
这是我的代码,以防万一:
using (var context = new MyObjectContext())
foreach (var at in context.AnnouncementTexts)
Console.WriteLine(at.Title);
关于什么可能是错的任何想法?