Как исправить 'IdentityModel.dll не найден'? - PullRequest
0 голосов
/ 27 марта 2019

Я пытаюсь использовать IdentityModel.dll через пользовательскую библиотеку классов.

У меня есть веб-служба (, которая будет развернута в SharePoint как WSP ), где я хочу использовать DLL IdentityModel.Oidcclient. Эта DLL не подписана (не имеет строгого имени). Подписанная версия DLL запрашивает более высокую версию .Net Framework. Мы не можем обновить.

Чтобы решить эту проблему: Я ссылался на IdentityModel.dll в моей пользовательской библиотеке классов MyLibrary.dll и ссылался на пользовательскую библиотеку классов MyLibrary.dll в моем исходном проекте «MyWebService».

По плану , проблема без подписи Identitymodel.OidcClient решена. Но мы получаем ошибку для IdentityModel.dll.

Теперь я получаю сообщение об ошибке

{"Не удалось загрузить файл или сборку" IdentityModel, версия = 3.10.6.0, Культура = нейтральная, PublicKeyToken = e7877f4675df049f 'или одна из ее зависимостей. Система не может найти файл указано. ":" IdentityModel, версия = 3.10.6.0, культура = нейтральная, PublicKeyToken = e7877f4675df049f "}

.

Я добавил ту же версию в проект. Даже токен открытого ключа такой же. Я развернул DLL в GAC, используя GACUTIL. Но не решено. Я застрял здесь.

1 Ответ

1 голос
/ 27 марта 2019

Добавьте следующий ключ в раздел в вашем web.config:

<compilation debug="true" targetFramework="4.5" >    
    <assemblies>
      <add assembly="IdentityModel, Version=3.10.6.0, 
          Culture=neutral, PublicKeyToken=e7877f4675df049f" />
    </assemblies>
</compilation> 
...