如何使用 Visual Studio 2010 和 EF 4.1 编写 .edmx 文件创建脚本?

发布于 2025-01-06 02:57:28 字数 361 浏览 1 评论 0 原文

我正在开始一个使用 EF 4.1 的新项目,首先是数据库。如果我使用 Visual Studio 生成 edmx,那么一切都很好;但是,当数据库发生更改而无法删除和删除时,我似乎无法找到刷新 edmx 的方法。重新添加它。

在之前的项目中(使用 EF 3.x?),我们使用脚本来执行此操作 - edmgen 创建 csdl、msl 和 ssdl,然后 edmgen2 创建 edmx 和 Designer.cs 文件。

我还需要使用 edmgen2 创建 edmx 文件吗?或者VS2010版本的edmgen有办法做到这一点吗?

I'm starting a new project using EF 4.1, database first. If I generate the edmx using Visual Studio, then everything is fine; however I can't seem to figure out a way to refresh the edmx when there are changes to the database short of deleting & re-adding it.

In a previous project (using EF 3.x?), we had scripts to do this - edmgen to create the csdl, msl, and ssdl, and then edmgen2 to create the edmx and designer.cs files.

Do I still need to use edmgen2 to create edmx files? Or is there a way with the VS2010 version of edmgen to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深居我梦 2025-01-13 02:57:28

我在这里创建了一个功能请求:
http://data.uservoice.com/forums/72025-entity-framework-feature-suggestions/suggestions/3022790-edmgen-exe-should-support-generate-an-edmx-file-

这里也有类似的讨论:
http://social.msdn.microsoft.com/Forums/sa/adodotnetentityframework/thread/a98cddf4-5975-4c20-b88d-d308ed7fa45f

http://social.msdn.microsoft.com/Forums/en/adonetefx/thread/d93cde02-7534-489c-a1bd-72f45ce404be

这里有一篇博客文章:
http://weblogs.asp.net/manavi/archive/2011/05/17/associations-in-ef-4-1-code-first-part-6-many-valued-associations。 .aspx
(提示:搜索“获取运行时 EDM”)

最后两个链接提供了答案:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
  // Additional configuration

  var provider = new DbProviderInfo("System.Data.SqlClient", "2008");
  var model = modelBuilder.Build(provider);
  model.WriteEdmx(provider, new XmlTextWriter(@"C:\temp\my.edmx", Encoding.ASCII));
}

I created a feature request here:
http://data.uservoice.com/forums/72025-entity-framework-feature-suggestions/suggestions/3022790-edmgen-exe-should-support-generating-an-edmx-file-

There are also similar discussions here:
http://social.msdn.microsoft.com/Forums/sa/adodotnetentityframework/thread/a98cddf4-5975-4c20-b88d-d308ed7fa45f

http://social.msdn.microsoft.com/Forums/en/adonetefx/thread/d93cde02-7534-489c-a1bd-72f45ce404be

There is a blog post here:
http://weblogs.asp.net/manavi/archive/2011/05/17/associations-in-ef-4-1-code-first-part-6-many-valued-associations.aspx
(Hint: search for "Get the Runtime EDM")

Those last two links provide the answer:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
  // Additional configuration

  var provider = new DbProviderInfo("System.Data.SqlClient", "2008");
  var model = modelBuilder.Build(provider);
  model.WriteEdmx(provider, new XmlTextWriter(@"C:\temp\my.edmx", Encoding.ASCII));
}
离笑几人歌 2025-01-13 02:57:28

在 edmx 设计器中右键单击并从数据库中选择更新模型,您将看到一个弹出窗口,您可以在其中选择需要更新的对象

Right mouse click in the edmx designer and choose update model from database you will get a popup where you can choose what objects needs updating

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文