已导入具有相同简单名称“IdentityModel”的程序集。请尝试删除其中一个引用或对其进行签名以启用并排

时间:2018-06-06 09:29:27

标签: c# asp.net-core visual-studio-2017 identityserver4 oidc

有人可以帮我理解以下异常的根本原因吗?我不明白这是怎么发生的,因为它指的是我消耗的nuget package

  

已导入具有相同简单名称“IdentityModel”的程序集。尝试删除其中一个引用(例如'C:\ Users \ {MYUSERNAME} \ .nuget \ packages \ identitymodel / 3.7.0。\ lib / netstandard2.0 / IdentityModel.dll')或签名以便逐个启用侧。

     
      
  1. @using {MYPROJECT.NAMESPACE} .ViewModels.Sport
  2.   
  3. @model List< WorkoutViewModel>
  4.   
  5. @ {
  6.   
  7. ViewBag.Title =“锻炼”;
  8.   
  9. }
  10.   

异常指向我的一个观点的代码行。使用NUnit通过集成测试触发代码。

IdentityModel是一个nuget包,所以我基本上无法控制它。

在指定的路径上删除IdentityModel.dll没有任何效果,因为它会被nuget包管理器恢复,并且会抛出相同的异常。

所以我遵循了异常的第二个建议并且它有效,但我对此解决方法不满意:

  1. https://github.com/IdentityModel
  2. 下载源代码
  3. 以完全不同的解决方案打开下载的源代码
  4. 在项目设置中签署IdentityModel项目
  5. 编译
  6. 使用我自己的签名和编译的IdentityModel.dll替换异常中提到的指定路径上的IdentityModel.dll
  7. 但是,我担心我现在必须为这个nuget包的每个新版本执行此操作,或者至少每当我决定更新它时。我想首先以适当的方式避免这种例外。

0 个答案:

没有答案