【问题标题】:generate dbcontext objects from edmx with mappings使用映射从 edmx 生成 dbcontext 对象
【发布时间】:2018-06-18 11:51:52
【问题描述】:

在我们公司,我们有很多使用 edmx 文件和 EF4 的遗留应用程序。 我们想迁移到 EF6(或 EF 核心)。有没有一种方法可以让我们从这个 edmx 使用映射生成代码优先对象(dbcontext、实体)。

我们怎样才能做到这一点?

【问题讨论】:

    标签: entity-framework entity-framework-6 ef-code-first entity-framework-4


    【解决方案1】:

    也许最好的解决方案是从当前数据库中使用脚手架(对模型进行逆向工程)。

    EF Core 为这个脚手架提供了不错的 powershell 工具 https://docs.microsoft.com/en-us/ef/core/get-started/aspnetcore/existing-db 您还可以使用指定的 Table 参数将整个(可能很大)DbContext 拆分为更多 DbContext https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell

    EF 6 也有一些脚手架实际数据库的选项Entity Framework - Generating Classes

    【讨论】:

    • 问题是edmx是强映射的。我们不想从 oracle 数据库重新启动。我们想要最少的代码中断。例如,数据库中的名称不同。
    • 也许这个答案可以帮助您stackoverflow.com/a/14882632/2866538 先将您的 edmx 转换为 EF 5.x 代码,然后再迁移到 EF 6
    【解决方案2】:

    您为什么要费心从 .edmx 生成任何东西?如果您首先使用现有数据库中的代码创建新项目怎么办?

    【讨论】:

    • 因为我们希望以最少的工作量迁移遗留应用程序。 edmx 已经在那里了...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-07
    相关资源
    最近更新 更多