Sql server EF代码生成中CLR命名空间的SQL Server架构名称
我的数据库中有以下表格:Sql server EF代码生成中CLR命名空间的SQL Server架构名称,sql-server,entity-framework,entity-framework-4,Sql Server,Entity Framework,Entity Framework 4,我的数据库中有以下表格: Business.Profiles User.Profiles 其中“业务”和“用户”是模式 通过Ado.Net DbContext生成器(添加代码生成项)生成DbContext时,我在代码中得到两个类: Profile Profile1 理想情况下,我希望模式名称转换为clr名称空间,但事实并非如此。有什么办法可以强迫你做这样的事吗?如何处理此问题?DbContext Generator仅使用EDMX文件中指定的名称,因此我猜您在EDMX中定义了Profile和P
Business.Profiles
User.Profiles
其中“业务”和“用户”是模式
通过Ado.Net DbContext生成器(添加代码生成项)生成DbContext时,我在代码中得到两个类:
Profile
Profile1
理想情况下,我希望模式名称转换为clr名称空间,但事实并非如此。有什么办法可以强迫你做这样的事吗?如何处理此问题?DbContext Generator仅使用EDMX文件中指定的名称,因此我猜您在EDMX中定义了
Profile
和Profile1
实体
类必须与EDMX中的实体具有完全相同的名称,并且不能将具有相同名称的两个类映射到同一EDMX模型。EF不支持它,因为POCO类是通过只使用类名的约定进行映射的(EF在映射中不使用CLR命名空间)。正因为如此,你无法实现你想要的。simples的解决方法只是在EDMX
UserProfile
和BusinessProfile
中命名实体,我一直发现这是一个相当有问题的组织缺陷。撇开解决方法不谈,模式通常用于DB名称空间;在命名空间类和模式对象之间进行1对1映射会更好。