我剛剛將現有的SQL Server 2008 R2 .dbproj升級到SQL Server 2012 .sqlproj(使用SQL Server數據工具)。如何在sqlproj中使用msbuild屬性(SQL Server 2012)腳本
以前,我能夠在我的項目通過編輯項目文件中加入以下元素使用的MSBuild值來定義SQLCMD變量,然後定義值:
<ItemGroup>
<SqlCommandVariableOverride Include="ProjectDirectory=$(MSBuildProjectDirectory)" />
</ItemGroup>
,我可以再使用在我的PostDeployment腳本是這樣的:
SELECT * INTO dbo.MyTable FROM dbo.MyTable WHERE 1=2
BULK INSERT dbo.MyTable
FROM '$(ProjectDirectory)\data\dbo.MyTable.dat'
WITH (DATAFILETYPE = 'widenative')
但是,升級後,這似乎不再起作用。
我曾嘗試向新的sqlproj中添加相同的條目,但發佈功能似乎並未將其提供並希望我提供值。如果我提供$(MSBuildProjectDirectory)
,則按字面解釋並失敗。
在新制度下,指定本地文件路徑和/或使用msbuild值的機制是什麼?