Visual studio 2008 基本LINQ到SQL问题:如何更新表类引用?

Visual studio 2008 基本LINQ到SQL问题:如何更新表类引用?,visual-studio-2008,linq-to-sql,Visual Studio 2008,Linq To Sql,我是LINQ的新手。我正在使用VisualStudio2008,并在我的项目中创建了一个“LINQtoSQL类”(.dbml)文件。我已经将我的每个数据库表添加到设计视图中,一切正常 我的问题是:当数据库中对表的设计进行了更改(即添加了字段)时,如何更新类以反映更改?每次更改表时,是否必须从dbml设计视图中删除该表并将其拖回设计视图表面?似乎应该有更好的方法,或者表类应该使用添加/删除的新字段动态更新自己。表类似乎不会自行注意/更新/刷新表的更改 提前感谢您提供的任何建议 是的。您必须操作.d

我是LINQ的新手。我正在使用VisualStudio2008,并在我的项目中创建了一个“LINQtoSQL类”(.dbml)文件。我已经将我的每个数据库表添加到设计视图中,一切正常

我的问题是:当数据库中对表的设计进行了更改(即添加了字段)时,如何更新类以反映更改?每次更改表时,是否必须从dbml设计视图中删除该表并将其拖回设计视图表面?似乎应该有更好的方法,或者表类应该使用添加/删除的新字段动态更新自己。表类似乎不会自行注意/更新/刷新表的更改


提前感谢您提供的任何建议

是的。您必须操作.dbml xml文件,或者删除该表并重新添加

通常,我会将修改保持在最小值,这样我就可以删除所有表并将它们全部添加回以维护关系等

PIA是一种轻描淡写的说法


p、 没有比这更好的办法了。(据我所知)

有很多方法可以解决这个问题。内置的方法是手动编辑,或者从关系图中删除受影响的表并重新添加它们,或者使用设计器或SQLMetal重新生成整个DBML文件。缺点是,您可能已经完成的任何自定义(更改的类/属性名称等)每次都需要重新完成


另外,还有提供同步功能的第三方附加组件。我的公司生产了其中一种工具,您可以阅读更多关于它的信息,下载,并在

处获得试用许可证。无需删除和重新添加该表。您可以手动添加或删除dbml中每个表中的字段。dbml图上的表可以右键单击。添加新字段时,可以使用属性表标识数据类型和映射回数据库的列


如果您正在进行重大更改,这可能会很乏味,删除和添加回表通常更简单、更快。但是如果您进行任何定制,例如向数据库中不存在的dbml添加关系,那么当您删除并读取一个表时,您还需要重新创建该关系。

我对LINQ2SQL使用T4转换


这使我可以在发生更改时,简单地在设计图面上拖动并替换整个庞大而丑陋的DB模式。

谢谢你,诗人,这不是最好的消息,但谢谢。在标记为答案之前,我将等待其他人是否有聪明的想法。可能的副本感谢所有评论/答案!