如何从CSDL + SSDL + MSL文件创建EDMX?

时间:2015-07-30 19:17:13

标签: .net entity-framework-6 edmx edmgen

我正在使用EdmGen.exe自动生成文件:

  • Database.cs
  • Views.cs
  • Concept.csdl
  • Storage.ssdl
  • Mapping.msl

如何从所有这些文件中生成EDMX文件,以便将其包含在我的Visual Studio项目中?

我试图以不需要使用Visual Studio IDE的方式自动执行EDMX更新,即完全来自命令行。

原因

我的开发团队需要开始使用很久以前设计的大型Oracle数据库,并进行小的,非频繁的更改。 Oracle的ODP实体框架似乎是一个非常好的工作平台,但他们的Visual Studio集成工具是一场灾难,我们试图像瘟疫一样避免。我被要求从命令行完全编写自动EF模型生成脚本。从CSDL + SSDL + MSL文件生成新的EDMX是我遇到的问题。

1 个答案:

答案 0 :(得分:0)

你想要的远远超出EF的左侧领域。我很确定你将不得不编写一些自定义工具,因为EDMX代不是我看到的Visual Studio让我认为它是IDE本身的一部分。

我发现了一些资源:

看一下我在本地的EDMX,它基本上只是你已经生成的那些文件的逻辑混搭,所以你应该能够找出并编写一个没有太多麻烦的生成器。当然,它会很乏味。

总的来说,考虑到代码优先或数据库优先方法的典型EF开发策略,我认为没有一个工具可以为您完成此任务。这里规定的规定将是代码优先的,但我完全明白为什么你不想重新创建它们。

那就是说,除非你出于某种原因绝对需要EDMX(可视化或其他东西),否则我实际上只是模板化你的模型并做一个伪“代码优先”的方法,甚至不用担心EDMX工具链。 / p>

祝你好运。