Я хочу, чтобы преобразования web.config работали локально, но, очевидно, преобразования происходят только при выполнении развертываний.
Кто-нибудь знает способ запуска цели msbuild «TransformWebConfig» без прохождения процесса «rebuild», а также указания и вывода каталога, в котором нужно выплевывать преобразованный web.config?
РЕДАКТИРОВАТЬ : Используя ответ Саида, я создал файл .bat
, чтобы выполнить задачу для меня:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Msbuild.exe "D:\Demo\Transformation.proj" /t:TransformWebConfig
copy /Y "D:\Demo\Web.config" "D:\MyProject\Web.config"
del ""D:\Demo\Web.config"
"Transformation.proj" является копией фрагмента кода Саида в ответе ниже. Просто укажите источник, цель и место назначения для преобразования. Новый файл, в данном случае преобразованный «web.config», будет находиться в каталоге «D: \ Demo». Я просто копирую его, чтобы перезаписать файл web.config моего проекта и, наконец, удаляю сгенерированный файл в папке «demo».
Кроме того, я создал макрос для запуска этого пакетного файла и выполнения преобразования для меня:
Public Module DoTransform
Sub RunTransformBatchFile()
Try
Process.Start("D:\Demo\RunTransform.bat")
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End Sub
End Module
Вы также можете добавить кнопку на панели инструментов для запуска этого пакета и / или назначить клавишу быстрого доступа для выполнения.