有没有办法在同一个程序集中首先使用相同类型名称的EF代码?

时间:2013-07-03 21:28:58

标签: c# entity-framework ef-code-first

我目前在EF代码第一个上下文中遇到以下错误:

Unhandled Exception: System.Data.MetadataException: Schema specified is not valid. Errors:
The mapping of CLR type to EDM type is ambiguous because multiple CLR types match the EDM type 'Offer'. Previously found CLR type 'CakeExtracter.CakeMarketingApi.Entities.Offer', newly found CLR type 'Cake
Extracter.Data.CakeTraffic.Offer'.
   at System.Data.Metadata.Edm.ObjectItemCollection.LoadAssemblyFromCache(ObjectItemCollection objectItemCollection, Assembly assembly, Boolean loadReferencedAssemblies, EdmItemCollection edmItemCollection
, Action`1 logLoadMessage)
   at System.Data.Metadata.Edm.MetadataWorkspace.LoadFromAssembly(Assembly assembly, Action`1 logLoadMessage)
   at System.Data.Entity.Infrastructure.DbCompiledModel.CreateObjectContext[TContext](DbConnection existingConnection)
   at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
   at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)

有没有办法解决这个问题,除了创建一个单独的项目,以便两个上下文存在于不同的程序集中?

1 个答案:

答案 0 :(得分:0)

这个问题的答案是安装解决了这个问题的EF6。

我使用了PMC命令:Install-Package EntityFramework -Pre

然后我不得不对我的代码进行调整,因为EntityState枚举移入了System.Data命名空间,然后它运行得很好。