2012-07-09 51 views
0

我正在通過entityframework創建一個小程序,該程序允許使用UI編輯POCO。作爲該過程的一部分,我想從我的代碼中調用「添加 - 遷移」命令來保存其他程序員與程序管理器控制檯的交互。有沒有可能?從我的代碼運行entityframework cmdlet

感謝

+0

因此,您正在爲Powerhell已經爲您提供的UI創建UI嗎?使用PowerShell有什麼問題? – 2012-07-09 08:06:53

+0

我們有一個複雜的應用程序與不少程序員。我首先使用EF代碼創建了一個數據庫包裝。我創建的實用程序爲EF創建了所有的支持代碼。所以,因爲我給了編輯pocos的能力,我還想自動執行遷移。我不想讓程序員編輯pocos,然後轉到powershell。一路上有人會搞砸了。 – Guy 2012-07-09 08:34:18

+0

你提到你有程序員 - 是不是程序員應該編寫代碼,而不是使用一些GUI來「點擊」代碼?看起來你正在努力讓程序員生活得更加艱難。另外還有用於生成POCO的工具:EDMX + T4模板。 – 2012-07-09 08:38:01

回答

2

Add-Migration小命令在由包管理控制檯使用單獨的EF 4.3 Powershell的組件限定。該程序集引用了一個真正的EF 4.3程序集。從該程序集公開的核心邏輯是從System.Data.Entity.Migrations.Design命名空間的ToolingFacade類。暴露的邏輯涉及檢索數據庫和待定遷移並搭建新遷移,但PowerShell程序集包含執行工作流並在EF,PowerShell和Visual Studio之間創建橋樑(向您的項目添加類) - 這是您必須對您的工程進行逆向工程和重新實現工具。

編輯:您還可以嘗試直接從PowerShell程序集運行MigrationCommands.AddMigration