更新 .dbml 文件

5

如何在数据库更改后更新.dbml文件。


可能是管理Linq to SQL Dbml文件的最佳实践?的重复问题。 - KristoferA
重复问题:https://dev59.com/BXVD5IYBdhLWcg3wRpeX,https://dev59.com/m0rSa4cB1Zd3GeqPU0Jy - Chris Moschini
4个回答

5

除了重新生成整个dbml文件(通过删除所有或一部分实体并重新拖放它们),或者使用其他回复建议的sqlmetal之外,没有内置的方法可以在进行更改后将dbml文件/数据上下文与数据库同步,但是有第三方工具(链接)可以向Visual Studio L2S设计器添加刷新功能。

其中一个这样的工具是我的插件Huagati DBML/EDMX Tools。您可以从http://www.huagati.com/dbmltools/下载它,并获得试用许可证以进行测试。

Jim Wooley在此处总结了各种Linq和Linq-to-SQL工具:
http://www.thinqlinq.com/default/LINQ-Tools.aspx

...而Damien Guard在这里列出了L2S的工具/资源:
http://damieng.com/blog/2009/06/04/linq-to-sql-resources


4

唯一的方法是从dbml接口中删除对象,然后重新添加它们。在对数据库进行更改后,请确保在服务器资源管理器面板中点击“刷新”,以便Visual Studio在创建dbml中的对象时获取数据库的最新更改。


2
SQLMetal是你想要的工具。它作为SDK的一部分随Visual Studio一起安装。但对于大多数dbml文件,我发现删除/重新添加技术更加快捷可靠。

2

无法自动刷新DBML以匹配数据库。如果您已将新表添加到数据库中,只需将它们拖入设计器窗口即可。如果您已添加或更改现有表上的字段或更改外键/关系,则最好手动编辑DBML文件中的类和属性。您可以删除它们,然后从服务器资源管理器中将其拖回来,这将从数据库中刷新它们,但您将失去任何自定义修改,例如将属性从public更改为protected或设置继承或其他内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接