代码之家  ›  专栏  ›  技术社区  ›  JAN

将代码生成从T4更改为LegacyobjectContext会导致异常?

  •  3
  • JAN  · 技术社区  · 10 年前

    我创建了一个新模型:

    1. 阿多。NET实体数据模型

    2. 数据库中的EF设计器。

    当我改变了 Code generation 从…起 T4 Legacy objectContext

    我得到了:

    类型或命名空间名称“EntityClient”不存在于 命名空间“System.Data”

    命名空间中不存在类型或命名空间名称“Objects” '系统数据'

    找不到类型或命名空间名称“EdmSchemaAttribute”

    知道我该怎么解决吗?

    2 回复  |  直到 10 年前
        1
  •  1
  •   Community Mohan Dere    9 年前

    看起来您需要添加EF 6.0 DbContext Generator,因为当前模板正在生成EF 5.0代码。查看@bondil的答案。

    我认为你的问题是,T4模板生成 实体和上下文仍然在EF版本5中。

    首先,您必须删除当前代码生成项 在模型的代码后面,即.Context。tt和 .tt。接下来添加一个新的EF版本6代码生成器 在模型设计器中单击->添加代码生成项…->环境足迹6.x DbContext生成器。

    Upgrade from Entity Framework 5 to 6

        2
  •  0
  •   Amr Ashraf    8 年前

    您需要将命名空间更改为

    using System.Data.Entity.Core.EntityClient;
    using System.Data.Entity.Core.Objects;
    using System.Data.Entity.Core.Objects.DataClasses;