标签: efpocoadapter

使用EF4的POCO模板时"找不到元数据信息"?

我刚安装了EF4的POCO模板.我的模型中有一个实体,AnnouncementText,并且T4文件似乎正确生成.当我访问自动生成的属性时,尝试访问此新实体会引发以下错误MyObjectContext.AnnouncementTexts:

InvalidOperationException:无法找到EntityType'MyNamespace.AnnouncementText'的映射和元数​​据信息.

AnnouncementTextPOCO 上的属性似乎与数据库中的列匹配,并且我没有更改任何自动生成的代码.

堆栈跟踪是:

   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
Run Code Online (Sandbox Code Playgroud)

如果我.tt从解决方案中删除文件并在模型上启用代码生成,我可以毫无问题地访问该属性.

这是我的代码,如果可能有帮助:

using (var context = new MyObjectContext())
   foreach (var at in context.AnnouncementTexts)
      Console.WriteLine(at.Title);
Run Code Online (Sandbox Code Playgroud)

关于可能出错的任何想法?

entity-framework poco efpocoadapter

23
推荐指数
1
解决办法
2万
查看次数

DataContractSerializer:如何序列化没有DataContract/DataMember属性的类/成员

DataContractSerializer要求使用DataContractDataMember属性标记类和成员.但是,在我的情况下,使用EFPocoAdapater框架自动生成类,并且这些属性不存在.

如何在没有这些属性的情况下使用DataContractSerializer强制序列化所有成员?

来自Alexdej:

这改变了3.5SP1,希望你看到:http://www.pluralsight.com/community/blogs/aaron/archive/2008/05/13/50934.aspx

serialization entity-framework datacontractserializer efpocoadapter

9
推荐指数
1
解决办法
1万
查看次数

如何使用Entity Framework 4.1,POCO和存储库模式设计应用程序

我正在尝试使用Enterprise Library 4.1在ASP.NET MVC中设计一个应用程序我添加了Entity Framework POCO模板并将生成的实体移动到一个单独的"Entities"项目中.但是,我很难确定设计此应用程序的最佳方法.我假设ObjectContext应该与EDMX文件在同一个项目中.但是ObjectContext必须能够访问POCO.如果我创建存储库,则需要访问POCO和ObjectContext.我假设存储库逻辑和POCO应该在同一个项目中,但这不起作用,因为"POCO项目"和"EDMX项目"之间会有一个循环引用.我不想将ObjectContext放在"POCO项目"中,因为该项目不应该引用System.Data.

我已经四处搜索了一些例子,但几乎所有的例子我发现这个例子并没有使用最佳实践.也许我让这太复杂了.我只是想了解如何最好地设计应用程序.

entity-framework repository poco efpocoadapter entity-framework-4

3
推荐指数
1
解决办法
5147
查看次数