我使用Linq2Sql,並且每次數據庫更改時都厭倦重新創建dbml。鑑於我希望所有的表格和所有的特效,是否可以編寫我的模型的創建?理想情況下,它將成爲構建過程或定製工具的一部分。是否可以通過腳本自動生成我的Linq2Sql DBML?
一個簡單的「從模式刷新」按鈕也可以,但從我可以告訴的是,沒有這樣的事情。目前,我必須更新模型的唯一方法是刪除已更改的表格和特效,並將其從服務器資源管理器重新拖出。
也許我錯過了什麼?
我使用Linq2Sql,並且每次數據庫更改時都厭倦重新創建dbml。鑑於我希望所有的表格和所有的特效,是否可以編寫我的模型的創建?理想情況下,它將成爲構建過程或定製工具的一部分。是否可以通過腳本自動生成我的Linq2Sql DBML?
一個簡單的「從模式刷新」按鈕也可以,但從我可以告訴的是,沒有這樣的事情。目前,我必須更新模型的唯一方法是刪除已更改的表格和特效,並將其從服務器資源管理器重新拖出。
也許我錯過了什麼?
我想你可以通過OP使用SQLMetal命令工具
編輯: 我最後寫一個批處理文件來執行檢出代碼,生成這個類,然後提交代碼。然後,我創建了一個數據庫模式更改級別觸發器,以便在模式更改時運行此批處理文件。所以,現在,當模式發生變化時,Linq類會被創建,檢入,然後CCNet創建DLL並分發它。甜蜜......
如果錢沒有對象,那麼最好的辦法是獲得Visual Studio 2008團隊系統的數據建模版本,創建一個數據庫項目並使用它來維護數據庫,數據模型和實體模型。保持數據庫和實體模型同步並不是零工作,而是使用模式比較工具,它離它不遠(它絕對會讓所有的苦差事都爲你工作)。恕我直言,數據建模和設計往返不僅證明購買Visual Studio 2008團隊版的成本高於專業版。
SQLMetal
http://msdn.microsoft.com/en-us/library/bb386987(v=vs.110).aspx
的SqlMetal命令行工具生成代碼和映射爲LINQ到.NET Framework的SQL組件。 SqlMetal可以執行多種不同的操作,其包括以下內容:
從數據庫,生成源代碼和映射屬性或一個 映射文件。
從數據庫中,生成用於自定義的中間數據庫標記語言 (.dbml)文件。
從.dbml文件生成代碼和映射屬性或映射 文件。
該工具自動與Visual Studio一起安裝。
SQLMetalPlus
一個項目,其中的.dbml可以在Visual Studio中有一個刷新按鈕可以自動生成。
http://www.codeproject.com/Articles/37198/SqlMetalPlus-A-VS-Add-in-to-Manage-Custom-Changes
SQLMetalPlus叉形Github上
包括預置的安裝程序。