我們在Visual Studio 2012解決方案以及一些內置的腳本中使用了一些自定義腳手架(例如Code First Migrations命令)。我們在包管理器控制檯中運行,然後使用PowerShell,我們可以將它們組合成有用的功能,從而執行幾項任務。如何在Visual Studio解決方案中創建可重用的PowerShell功能
例如,我們有幾個使用Migrations的項目,我們希望爲每個項目執行Update-Database cmdlet,只寫一條命令。類似的東西:
"Project1", "Project2", "Project3", "Project4" | ForEach-Object {Update-Database -StartUpProjectName $_ -ProjectName $_}
它工作得很好,但我們希望能有像
Update-All
的命令會做同樣的,而不需要輸入以前的事情。我們希望所有開發人員都可以使用它,作爲解決方案的一部分,然後從源代碼控制中獲得。
任何想法如何做這種事情?
編輯: Keith Hill關於使用PowerShell配置文件的建議很有用。我也在使用Nuget中的Import-Module cmdlet。我希望在項目中實際上擁有非常流暢的管理可重用cmdlet的工作流程。任何想法如何讓解決方案執行導入模塊?它可以編寫一個自定義(私人)Nuget包而無需託管它,並讓它執行將導入模塊的init.ps?
你能否加入一些信息?不熟悉VS及其cmdlet。 Update-Database是VS-cmdlet還是第三方?什麼目錄是從包管理器控制檯運行的命令? –