Windows Azure — Microsoft.IdentityModel не найден

Я установил среду выполнения WIF и SDK на свой компьютер. Я добавил Microsoft.IdentityModel.dll в свое веб-приложение Azure, и локально все работает отлично. Я создаю простое веб-приложение, которое использует управление доступом Azure AppFabric. Для этого я слежу за лазурными лабораториями, и, как я уже сказал, у местных все отлично. Когда я опубликовал свое веб-приложение в Azure, я получаю следующую ошибку:

Не удалось найти сборку «Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35».

Я получаю это после того, как часть ретрансляции Appfabric собирается вернуть URL-адрес после входа в систему поставщика удостоверений. Странно то, что я установил для параметра Копировать локальное значение TRUE, потому что эта библиотека .dll не является частью Azure GAC. Я попытался опубликовать его снова, но получил ту же ошибку. Я нашел несколько таких же проблем в Интернете, но без конкретного решения. У кого-нибудь здесь было что-то подобное и, вероятно, есть рабочее решение? заранее спасибо


person rjovic    schedule 17.01.2011    source источник


Ответы (4)


Для всего, что мне нужно развернуть локально в Azure, я делаю копию DLL в папке моего проекта и ссылаюсь на них оттуда, устанавливая для локального копирования значение true. После этого у меня больше нет проблем с публикацией DLL в Azure. Я также делаю всю свою сборку через командную строку, используя MSBuild, и публикую cspack вручную. Это означает, что я не полагаюсь на Visual Studio при сборке или развертывании.

person Aaron Weiker    schedule 19.01.2011

Я столкнулся с этим и решением, описанным в этот блог помог. Вам нужно будет запустить эту команду из задачи запуска вашей роли:

gacutil /nologo /i .\Microsoft.IdentityModel.dll  

Эта задача запуска должна выполняться с полными привилегиями.

person seva titov    schedule 31.03.2011

Вы пытались отключить шифрование при создании пакета развертывания и убедиться, что dll действительно присутствует?

person BrentDaCodeMonkey    schedule 18.01.2011
comment
Не могли бы вы рассказать мне, как это сделать (в кратких заметках)? Спасибо! - person rjovic; 18.01.2011
comment
blogs.msdn.com/b/jnak/archive/2009/04/16/ ‹- в двух словах, установите/создайте переменную среды CSPACK_FORCE_NOENCRYPT и установите значение true . Затем пересоберите пакет - person BrentDaCodeMonkey; 19.01.2011

Создайте новую переменную среды с именем: _CSPACK_FORCE_NOENCRYPT_ установите значение true. Перезапустите визуальную студию.

person Saravanan    schedule 19.01.2011
comment
В этом нет необходимости, так как все это позволяет вам просматривать файл cspack, поскольку он не зашифрован. - person Aaron Weiker; 19.01.2011