Я хочу использовать Visual Web Developer Express 2010 для публикации веб-сайта, предварительно скомпилированного на удаленный сервер через FTP, используя следующие настройки:
- Развертывание только файлов, необходимых для запуска этого приложения
- Предварительно скопируйте это приложение перед публикацией
- Разрешить обновление веб-сайта
- Базы данных не развертываются
- Сайт развертывается как иерархия файлов, а не как .zip-пакет.
Моя первая сборка/развертывание, похоже, прошла хорошо, но после моей второй компиляции я получил следующую ошибку:
Transformed web.config using C:\path_to_site\Web.Debug.config into obj\Debug\TransformWebConfig\transformed\web.config.
Copying all files to temporary location below for package/publish:
obj\Debug\AspnetCompileMerge\Source.
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.5\Web\Transform\Microsoft.Web.Publishing.AspNetCompileMerge.targets(132,5): Error : Can't find the valid AspnetMergePath
И вот подмножество содержимого файла Microsoft.Web.Publishing.AspNetConfigurationMerge.targets:
<Target
Name="GetAspNetMergePath"
DependsOnTargets="$(GetAspNetMergePathDependsOn)"
Condition ="'$(GetAspNetMergePath)' != 'false'">
<PropertyGroup>
<AspnetMergeName>aspnet_merge.exe</AspnetMergeName>
<AspnetMergePath Condition="Exists('$(TargetFrameworkSDKToolsDirectory)$(AspnetMergeName)')">$(TargetFrameworkSDKToolsDirectory)</AspnetMergePath>
</PropertyGroup>
<Error Condition="'$(AspnetMergePath)' == '' Or !Exists($(AspnetMergePath))"
Text="Can't find the valid AspnetMergePath" />
</Target>
EDIT: изменение настроек публикации для удаления всех существующих файлов перед публикацией не устраняет проблему в конце концов. Я предполагаю, что проблема сейчас локальна из-за этого.
В моем web.config не присутствует тег AspMergePath. Я не знаю, должен ли я вручную добавить тег. Однако в моем проекте существует путь "obj {publish setting}\AspnetCompileMerge\Source].
И в случае, если это имеет значение, мое имя проекта - "TestProject.NET"
Ваши отзывы приветствуются.