2013-02-11 70 views
5

我想使用PowerShell部署數據庫項目「database.dbproj」(例如)。到目前爲止,我嘗試使用下面的方法來部署項目,使用PowerShell部署數據庫項目(.dbproj)

$的MSBuild = 'C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \ MSBuild.exe'

$選項1 = @( '/ t:rebuild,deploy/p:TargetConnectionString =「Data Source =(local)\ SQL2008R2; Integrated Security = True; Pooling = False;」 /p:TargetDatabase = test「C:\ TEMP \ SVN \ 6000 \數據庫\ Database.dbproj「')

& $ $的MSBuild選項1

而且

$ TEST1 = @(」 /target:Build,deploy','C:\TEMP\SVN\6000\Database\Database.dbproj','/property:TargetConnectionString="Data 源=(本地)\ SQL2008R2;集成 安全= TRUE;池= FALSE;「」, '/屬性:TargetDatabase =測試')

& $ $的MSBuild test1的

$ test2的= $的MSBuild + 「」 + $選項1

調用,表達$ test2的

但在所有情況下,它不會做任何事情。我的意思是如果我調試代碼,那麼我可以看到這個指針到達這個命令,然後簡單地移動到下一行命令,而不做任何事情。 我有類似的批處理腳本,它工作得很好。所以我相信這是導致這個問題的一些noob錯誤。我在這裏做什麼錯了?

感謝, 傑克

回答

5

嘗試以下操作:

Start-Process -FilePath "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" -ArgumentList "/t:reBuild,deploy /p:TargetConnectionString=`"Data Source=(local)\SQL2008R2;Integrated Security=True;Pooling=False;`" /p:TargetDatabase=test `"C:\TEMP\SVN\6000\Database\Database.dbproj`"" 
+0

即快速回復。它適用於我。謝謝。 – JackLock 2013-02-11 16:11:40

+0

沒問題。你永遠如此受歡迎。 – 2013-02-11 16:22:53