Не удается загрузить импортированный модуль с именем " Диагностика.'


Сборка из VS 2013 прерывается со следующей ошибкой:

C:Program файлы (x86)MSBuildMicrosoftVisualStudiov12. 0Windows Инструменты Azure2.5Microsoft.Вид из окна.цели (684,5): ошибка : CloudServices58: не удается загрузить импортированный модуль с именем " Диагностика.'

Файл ServiceDefinition.csdef:

<ServiceDefinition name="MYWEBPROJECTNAME.Azure"
                   xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"
                   schemaVersion="2014-06.2.4">
    <WebRole name="MYWEBPROJECTNAME" vmsize="Small">
        <Imports>
            <Import moduleName="Diagnostics" />
        </Imports>
    </WebRole>
</ServiceDefinition>

Я попытался переустановить Azure SDK 2.5 отсюда http://azure.microsoft.com/en-us/downloads/ для VS 2013 и это не помогло.

Обновление

Он ломается на

  <ValidateServiceFiles
      ServiceDefinitionFile="@(SourceServiceDefinition)"
      ServiceConfigurationFile="@(SourceServiceConfiguration)">
  </ValidateServiceFiles>

Задача ValidateServiceFiles вызывает Microsoft.ServiceHosting.Tools.MSBuildTasks.ImportResolver и не может найти модуль "Диагностика". Задача получает свои модули из массива элементов задачи ImportedModules.

Обновление 2

Похоже, что есть некоторый беспорядок с установкой VS 2012/2013. При запуске "VS2012 x86 Native Tools Command Prompt" (%comspec% /k ""C:Program Files (x86)Microsoft Visual Studio 11.0VCvcvarsall.bat"" x86) msbuild отобразил эту ошибку. То же самое при запуске "Microsoft Azure Command Prompt-v2.5" (C:WindowsSystem32cmd.exe /E:ON /V:ON /K "C:Program FilesMicrosoft SDKsAzure.NET SDKv2.5\binsetenv.cmd").

C:SOMEPATHMYWEBPROJECTNAME.Лазурный.ccproj (72,3): ошибка MSB4019: Импортированный проект "C:Program файлы (x86)MSBuildMicrosoftVisualStudiov11. 0 Windows Azure Tools2.5Microsoft.Вид из окна.цели" не было найдено. Убедитесь, что путь в объявлении указан правильно и что файл существует на диске.

Удаление VS 2012 и восстановление VS 2013 не помогли.

2 6

2 ответа:

Мне пришлось удалить элемент из файла csdef, чтобы мой проект был скомпилирован. Затем я последовал этому http://msdn.microsoft.com/en-us/library/azure/dn186185.aspx#BK_Migration

Существует подход к диагностике между Azure SDK 2.4 и Azure SDK 2.5. Вы можете прочитать об изменениях в https://msdn.microsoft.com/en-us/library/azure/dn186185.aspx#BK_Migration . Тем не менее, у меня не было кода, на который повлияло изменение, но было ServiceDefinition.у csdef был импорт в диагностику.

  <Imports>
        <Import moduleName="Diagnostics" />
        <Import moduleName="RemoteAccess" />
        <Import moduleName="Caching" />
    </Imports>

Ошибка была вызвана поддержкой в Microsoft.Вид из окна.цели. Поскольку у меня не было кода, зависящего от импорта этих модулей, я просто прокомментировал эти два ссылки на и вещи построены прекрасно.