c# - 为什么 EntityFramework 在 edmx 中默认在数据库实体后面附加 1?

标签 c# .net entity-framework

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

包括我们拥有的EmployeeDB.Designer.cs

 public partial class SchoolDBEntities1 : ObjectContext

为什么这里需要这个1?它只是感觉就像那些快速而肮脏的代码片段之一“现在这样命名,并在以后的事情中给它一个适当的名称”......但我确信这一定有一个很好的理由

最佳答案

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

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

关于c# - 为什么 EntityFramework 在 edmx 中默认在数据库实体后面附加 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16882703/

相关文章:

c# - 在 c#.net 中使用字符串

c# - 获取 null 作为整数类型的默认值

c# - WebBrowser.DrawToBitmap() 或其他方法?

c# - 如何检测隐藏的桌面?

c# - 不相关的类是什么意思?

c# - 使用 Chromium Embedded 有没有办法从 Javascript 与程序通信?

entity-framework - Entity Framework 5.0 Beta - 是否会提供 DbContext 代码生成模板?

c# - Mac 上的 Visual Studio Community 2017 : How to view same file in two columns?

c# - 合并两个 List<T> 并使用 EF 过滤掉重复项

linq - WCF 数据服务、DTO 和 Entity Framework : The argument to DbIsNullExpression must refer to a primitive, 枚举或引用类型