У меня был большой проект Silverlight с громоздким web.config, в котором использовались преобразования для файлов web.debug.config, web.uat.config и web.release.config.
У меня естьне разделил мою конфигурацию EntLib на EntLib.config, с соответствующими файлами EntLib.debug.config, EntLib.uat.config и EntLib.release.config.Я отредактировал файл .csproj и использовал DependentUpon, чтобы файлы были вложены в EntLib.config.Теперь я пытаюсь заставить VS2010 применить преобразования, когда я использую опцию меню Publish ... для публикации файлов прямо на тестовом сервере.
Я пытался применить this , как показано ниже, но это не похоже на работу.Я вижу преобразованный файл EntLib.config в obj \ $ (Configuration) \ TransformWebConfig \ transformed, но он не развернут.Я также попытался использовать Project> Build Deployment Package, который я затем запустил на другом компьютере.Оба оставляют мне EntLib.config в его оригинальной форме плюс каждый файл EntLib. ($ Configuration) .config вместе с ним.Должно ли это работать?Буду признателен за любую помощь, которую может предложить любой.
<PropertyGroup>
<ConfigFileName>EntLib.config</ConfigFileName>
</PropertyGroup>
<PropertyGroup>
<!-- This property is used to handle circular dependency between
TransformWebConfig and our custom target TransformAppConfig -->
<FirstRun Condition="$(FirstRun) == ''">true</FirstRun>
</PropertyGroup>
<!-- This target will be called one time after a call to TransformWebConfig -->
<Target Name="TransformAppConfig" AfterTargets="TransformWebConfig" Condition="$(FirstRun) == 'true'">
<MSBuild Projects="$(MSBuildProjectFile)" Targets="TransformWebConfig" Properties="ProjectConfigFileName=$(ConfigFileName);
 Configuration=$(Configuration); 
 FirstRun=false" />
</Target>
<!-- This target will be called one time before PreAutoParameterizationWebConfigConnectionStrings
to add $(ConfigFileName) to autoparameterization step -->
<Target Name="AddToAutoParameterizationStep" BeforeTargets="PreAutoParameterizationWebConfigConnectionStrings">
<ItemGroup>
<_WebConfigsToAutoParmeterizeCS Include="@(FilesForPackagingFromProject)" Condition="('%(FilesForPackagingFromProject.Filename)%(FilesForPackagingFromProject.Extension)'=='$(ConfigFileName)') And !%(FilesForPackagingFromProject.Exclude)">
<TransformOriginalFile>$(AutoParameterizationWebConfigConnectionStringsLocation)\original\%(DestinationRelativePath)</TransformOriginalFile>
<TransformOutputFile>$(AutoParameterizationWebConfigConnectionStringsLocation)\transformed\%(DestinationRelativePath)</TransformOutputFile>
<TransformScope>$(_PackageTempDir)\%(DestinationRelativePath)</TransformScope>
</_WebConfigsToAutoParmeterizeCS>
<_WebConfigsToAutoParmeterizeCSOuputFiles Include="@(_WebConfigsToAutoParmeterizeCS->'%(TransformOutputFile)')">
</_WebConfigsToAutoParmeterizeCSOuputFiles>
</ItemGroup>
</Target>