真的很愚蠢的问题,对不起,但我无法在谷歌上找到它(我确定它是在截屏视频或其他地方)。我有一个DBML(linq2sql类)图,我已经更改了底层数据库。在VS2008中,如何“刷新”图表?没有View - > Refresh或RightClick-> Refresh或Update选项。
现在,我每次更新底层数据库时都必须重新创建整个linq2sql类。
答案 0 :(得分:8)
右键单击并选择“运行自定义工具”(在dbml文件的解决方案资源管理器中)
答案 1 :(得分:5)
如果您想将数据库更改纳入DBML图表,那么您可以:
a)从设计器图中删除已更改的实体并重新拖动它们。您将丢失任何自定义(例如,类和属性名称更改等)。
b)手动更新图表,添加/删除类,成员属性等。
c)使用能够比较和更新DBML文件与底层数据库的第三方工具。其中一个工具就是我的加载项Huagati DBML/EDMX Tools。它为VS2008和VS2010中的L2S设计器添加了许多功能,包括更新/同步,比较,批量重命名,名称规则实施,扩展属性/索引/等的文档,每个dbml图的多个“视图”等。
答案 2 :(得分:1)
首先,您必须将.sdf文件更新为.dbml文件。我通过打开cmd提示符并将路径指向SqlMetal.exe路径来完成它。之后将目录更改为.sdf数据库所在的目录,然后键入“SqlMetal.exe(nameofdatabase).sdf /dbml :( nameofdatabase).dbml”。右键单击并选择“运行自定义工具”(在dbml文件的解决方案资源管理器中)。应该这样做(至少对我而言)。