X 已包含 EntityFramework 的定义 Y? (简单数据库)

2024-03-22

我的 MS SQL 数据库中有 3 个表,并且我已将 EntityFramework(最新)添加到我的项目中,并在其中导入了这 3 个表。第一个问题是没有构建实体,所以我将“代码生成策略”从None to Default.

构建后我得到

X 已包含 Y 的定义

实体的所有属性。

当仔细观察时,它已经生成了部分前Users.cs和一个部分User在 在MainModel.Designer.cs?

为什么会产生User.cs?我在另一个项目中有类似的设置,并且 EF 设置为相同的设置,没有User.cs?

Edit1:我可以看到一件事有所不同,那就是在失败的项目中设置为 False 的“使用强空间类型”,但是不可能将其设置为 true(灰色)?


你应该使用None.edmx 文件的代码生成策略。或者删除MainModel.tt and MainModel.Context.tt模板,生成模型实体和上下文。

如果你使用Default代码生成策略,然后实体和上下文将生成为MainModel.Designer.cs文件。这将是标准实体,继承自EntityObject,上下文将继承ObjectContext。在 Entity Framework 5 中,我们可以生成 POCO 实体。整个生成过程是在 T4 模板中完成的,它生成上下文,继承自DbContext,以及没有某些基本类型的 POCO 实体(好吧,仅对象)。

当您拥有模板并在 edmx 设计器中启用代码生成时,将生成两组实体。这就是名称冲突的原因。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

X 已包含 EntityFramework 的定义 Y? (简单数据库) 的相关文章

随机推荐