Linqtosql与数据库同步

时间:2009-06-30 03:42:15

标签: linq-to-sql

我即将在我的第一个asp.net mvc应用程序中使用linqtosql。 我想出了一个数据库模式。但问题是我将来可能会改变一些表格。因此,保持模型类与数据库同步将是一个问题。

我得到了这个链接,说明了类似的情况,

keep LinqToSQL sync with the database

我的问题是,是否有任何机构使用上述帖子中给出的第三方工具, 他们是否正常工作

www.huagati.com/dbmltools/

www.perpetuumsoft.com/Product.aspx?lang=en&pid=55&tid=linqtosqlsynchronization

或者有没有更好的方法解决这个问题。

2 个答案:

答案 0 :(得分:1)

“官方”方法是简单地从设计器中删除任何过时表,然后再次从服务器导航器中拖动更新的表。我已经使用这种方法一年多了,只要你在更新数据库的同时更改数据上下文就应该没问题。它还为您提供额外的激励,以确保您在继续之前按顺序拥有数据库结构。

答案 1 :(得分:1)

还有SQLMetal。

http://msdn.microsoft.com/en-us/library/bb386987.aspx

这是我们的CreateDBML.bat文件中的内容

call "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86

sqlmetal /server:{server-name} /user:{username} /password:{password} /database:{databasename}
         /dbml:..\..\Codebase\Domain\CompanyName.ProjectName.Domain\Entities\ProjectName.dbml 
         /namespace:CompanyName.ProjectName.Domain.Entities /pluralize /views 


sqlmetal /code:..\..\Codebase\Domain\CompanyName.ProjectName.Domain\Entities\ProjectName.designer.cs ..\..\Codebase\Domain\CompanyName.ProjectName.Domain\Entities\ProjectName.dbml
pause