Я хотел бы надежно автоматически установить сборки приложений в GAC при компиляции приложения с использованием Visual Studio.Я настроил события до и после сборки в сборке моего веб-приложения.
Событие до сборки:
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\gacutil.exe" /f /ul Uninstall.Gac.txt
Событие после сборки:
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\gacutil.exe" /f /il Install.Gac.txt
%windir%\system32\inetsrv\appcmd.exe recycle apppool -apppool.name:"Sharepoint IIS WebApps"
КакВы можете видеть, что я также перерабатываю пул веб-приложений, чтобы новые сборки начали работать.
Проблема, с которой я столкнулся, заключается в том, что это очень ненадежный процесс.В случае сбоя моего веб-приложения моя следующая сборка не удастся, потому что не удастся удалить (пост-сборка не выполнялась в предыдущей сборке) ... И т. Д.
Я бы хотел сделать этот процесс максимально надежным,Я хотел бы условно деинсталлировать и сборки, если они присутствуют, и принудительно устанавливать независимо от того, там они или нет ... Но событие перед сборкой все еще важно по следующей причине:
Важно
Важно, чтобы все мои сборки были полностью удалены перед сборкой, иначе они не будут скопированы в мой выходной каталог (так как компилятор находит их в GAC), поэтому установка GAC завершится неудачно, так как он не может найти сборки в выходных данных \Папка bin.
Как мне надежно выполнить удаление и установку GAC в моей сборке веб-приложения?