gpt4 book ai didi

c# - 在没有 t4 代码生成器的情况下创建 Entity Framework (如 vs 2010)

转载 作者:行者123 更新时间:2023-11-30 13:30:22 24 4
gpt4 key购买 nike

我想使用 VS 2015 创建一个基于数据库的 Entity Framework 模型。

有一些问题:

1) 当我想创建模型时,我收到此警告:

enter image description here

2) 当我创建模式时,生成了一些文件,如 T4。

enter image description here

3) 生成的类没有像这样的数据注释:

[EdmEntityTypeAttribute(NamespaceName="SomeModel", Name="tblCode1")]
[Serializable()]
[DataContractAttribute(IsReference=true)]

4) 在我们组里有些人有 VS 2013 或 2010,他们不能使用这种类型的模型。

我如何在没有 T4 的情况下使用 VS 2015 像 VS 2010 或 2013 创建模型(如下所示只有 2 个文件)

enter image description here

最佳答案

简答:

您需要将 edmxCode Generation Strategy 属性从“T4”更改为“Legacy ObjectContext"并从 Solution Exporer 中删除 .tt 节点。

长答案:

以下是所需的步骤:

(1) 假设您首先选择“添加 -> 新项 -> ADO.NET 实体数据模型 -> 来自数据库的 EF 设计器”。

(2) 按照“实体数据模型向导”操作。接下来是非常重要。当您到达询问您要使用的 EF 版本的屏幕时,请确保选择 EF 5.0,否则 T4 模板将是您唯一的选择:

enter image description here

(3) 完成向导。对第一个屏幕截图等安全警告说“确定”。项目结构将类似于您的第二个屏幕截图。

(4) 在设计器中打开edmx文件。查看属性窗口,有一个名为 Code Generation Strategy 的属性,默认情况下为“T4

enter image description here

将属性更改为“Legacy ObjectContext

(5) 从解决方案资源管理器中删除 YourModel.Context.ttYourMdel.tt 节点,您就完成了。

有点无聊,但做你想做的事。缺点是您只能使用过时的 EF 版本,而即将推出的 EF7 将完全淘汰 edmx,因此现在可能是开始考虑切换到 Code First 方法的好时机。但在那之前,希望以上内容能帮助您保持当前流程。

关于c# - 在没有 t4 代码生成器的情况下创建 Entity Framework (如 vs 2010),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35987219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com