为什么EntityFramework在数据库实体之后默认在edmx中附加1?

时间:2013-06-02 12:19:03

标签: c# .net entity-framework

为什么EntityFramework默认情况下会将 1 添加到新创建的EDMX文件中?假设我有一个名为 EmployeesDB 的数据库,选择添加>新的ADO.Net数据实体数据模型并在向导中选择此数据库会创建多个文件,

包括 EmployeeDB.Designer.cs ,我们有

 public partial class SchoolDBEntities1 : ObjectContext

为什么这里需要 1 ?它只是感觉就像那些快速和肮脏的代码片段之一“现在就这样命名,并给它一个正确的名称后面的东西”......但我相信这一定有充分的理由

2 个答案:

答案 0 :(得分:4)

EF使用数字来解决名称冲突。您是否已在名为SchoolDBEntities的项目中拥有另一个类?也许是一个旧的EDMX文件?还是手写的东西?或者,某个类可能是SchoolDBEntities的部分扩展,但缺少partial关键字?

如果删除冲突的类,则可以重命名新生成的并删除EDMX设计器中的1

答案 1 :(得分:-1)

我通过删除web.config中重复的连接字符串解决了这个问题。