Я пытаюсь запустить веб-роль Azure, которая использует библиотеку Microsoft.CodeAnalysis "Roslyn". Из-за того, что требуются функции, которые были добавлены с момента последней сборки RC, доступной в NuGet, я создаю код из репозитория GitHub, на который я ссылаюсь. Я выполняю сборку, запуская прилагаемый скрипт cibuild.cmd
.
Код отлично работает при запуске из программы командной строки, но когда я запускаю веб-роль локально или в Azure, я получаю сообщение об ошибке, например
Не удалось загрузить файл или сборку «Microsoft.CodeAnalysis.CSharp.Features» или одну из ее зависимостей. Не удалось проверить подпись строгого имени. Возможно, сборка была подделана или она была подписана с задержкой, но не полностью подписана правильным закрытым ключом. (Исключение из HRESULT: 0x80131045)
Что имеет смысл... за исключением того, что sn.exe
сообщает, что проверка отключена для этого открытого ключа. (EDIT: я проверил записи реестра, чтобы убедиться, что это верно как для 64-битного, так и для 32-битного кода.) Я также пытался использовать утилиту Roslyn FakeSign.exe
безрезультатно.
Как заставить последнюю сборку Roslyn работать в контексте веб-роли?