I have STFW, the documentation, and poured through my own build scripts and cannot find the answer; even reading through a "Diagnostic" build log has yet to reveal what I am looking for.
When I build a VS2010 / MSSQL 2008 solution containing four projects, the output for each project looks like:
__target/$Arch_$Config/sql/$projectName/$projectName.dbschema
__target/$Arch_$Config/sql/$projectName/$projectName.deploymanifest
__target/$Arch_$Config/sql/$projectName/$databaseName_Database.sqlcmdvars
__target/$Arch_$Config/sql/$projectName/$databaseName_Database.sqldeployment
__target/$Arch_$Config/sql/$projectName/$databaseName_Database.sqlsettings
__target/$Arch_$Config/sql/$projectName/$databaseName_Script.PostDeployment.sql
__target/$Arch_$Config/sql/$projectName/$databaseName_Script.PreDeployment.sql
What concerns me is the last five files -- I cannot tell how/when/where the table name is being appended to those output files and the .d开发者_运维技巧eploymanifest is being modified to seek these files; I would rather these files not include references to the table name, as it would then be easier to use the same build output to deploy the database to a different table.
Why are my output files being named as such, and what do I have to do to stop this behavior?
I looked at this real quick and like you said there doesn't seem to be an easy way to control all of these. For the first couple I found that you can define the following properties.
<PropertyGroup>
<DbSchemaFileName>CustomNameHere</DbSchemaFileName>
<DeployManifestName>CustomManifest</DeployManifestName>
</PropertyGroup>
But couldn't figure out the .sqlcmdvars file and don't have time to look @ others.
You are better off copying the files and stripping off the name I think.
精彩评论