我有一個使用vs2010創建的標準sql server 2008項目。我一直在嘗試修改構建過程,以便在最後啓動一個自定義任務,通過將構建的輸出(dbschema文件)與靜態DBschema文件進行比較來調用VSDBCMD以生成部署腳本。當我從VS2010命令提示符下運行此命令從dbproj文件內部調用VSDBCMD
vsdbcmd.exe /a:deploy /dd:- /dsp:sql /model:obj\Release\EnterpriseBuild.Services.Database.dbschema /targetmodelfile:VersionedSchemas\v1.0.dbschema /DeploymentScriptFile:NewDeploymentScript.sql /p:TargetDatabase="EnterpriseBuild.Database"
一切都很正常,併產生newdeployment.sql文件。然而,當我修改我的.dbproj文件,包括以此爲目標AfterBuilds
<Target Name="AfterBuild">
<!--<Message Text="sample text" Importance="high"></Message>-->
<Exec IgnoreExitCode="false"
WorkingDirectory="C:\Program Files (x86)\Microsoft Visual Studio 10.0\VSTSDB\Deploy\"
Command="vsdbcmd.exe /a:deploy /dd:- /model:obj\Release\EnterpriseBuild.Services.Database.dbschema /targetmodelfile:VersionedSchemas\v1.0.dbschema /DeploymentScriptFile:NewDeploymentScript.sql /p:TargetDatabase="EnterpriseBuild.Database"" />
</Target>
構建失敗了
EnterpriseBuild.Services.Database.dbproj(211,5): error MSB3073: The command "vsdbcmd.exe /a:deploy /dd:- /model:obj\Release\EnterpriseBuild.Services.Database.dbschema /targetmodelfile:VersionedSchemas\v1.0.dbschema /DeploymentScriptFile:NewDeploymentScript.sql /p:TargetDatabase="EnterpriseBuild.Database"" exited with code 1.
消息。
任何人都可以建議我做錯了什麼?