2015-11-02 39 views
0

我与β-8 MVC6项目,当我添加了System.Security.Claims NuGet包,我会得到以下编译错误:具有同等身份的多组件 - System.Runtime.dll

Error CS1703 Multiple assemblies with equivalent identity have been imported: 'C:\Users\username.dnx\packages\System.Runtime\4.0.20\ref\dotnet\System.Runtime.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5.1\Facades\System.Runtime.dll'. Remove one of the duplicate references.

有关解决此问题的任何指导将不胜感激!

我能够从仅仅是一种简单的新项目,以复制,Beta8Class只是在解决方案中常见的类库,这里是project.json:

{ 
    "webroot": "wwwroot", 
    "version": "1.0.0-*", 

    "dependencies": { 
    "Beta8Class": "1.0.0-*", 
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta8", 
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8", 
    "Microsoft.AspNet.Mvc": "6.0.0-beta8", 
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta8", 
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8", 
    "Microsoft.AspNet.StaticFiles": "1.0.0-beta8", 
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta8", 
    "Microsoft.Framework.Configuration.Json": "1.0.0-beta8", 
    "Microsoft.Framework.Logging": "1.0.0-beta8", 
    "Microsoft.Framework.Logging.Console": "1.0.0-beta8", 
    "Microsoft.Framework.Logging.Debug": "1.0.0-beta8", 
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta8", 
    "System.Security.Claims": "4.0.1-beta-23409" 
    }, 

    "commands": { 
    "web": "Microsoft.AspNet.Server.Kestrel" 
    }, 

    "frameworks": { 
    "dnx451": { }, 
    "dnxcore50": { } 
    }, 

    "exclude": [ 
    "wwwroot", 
    "node_modules" 
    ], 
    "publishExclude": [ 
    "**.user", 
    "**.vspscc" 
    ], 
    "scripts": { 
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ] 
    } 
} 

感谢

+0

因此,它看起来像我不需要Nuget包来访问System.Security.Claims。它实际上是mscorlib的一部分。 –

回答

2

你得到冲突的参考因为这是一个测试版本,混合两个不同的版本将导致引用冲突。您应该使用所有的beta8版本。

如果你想与安全的东西,你可以使用这些包

"Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta8", 
    "Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta8", 
    "Microsoft.AspNet.Authentication.Google": "1.0.0-beta8", 
    "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta8", 
    "Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta8", 
1

System.Security.Clamis包版本4.0.1-β-23409只dnxcore5支持。尝试删除dnx451目标框架。

您可以的NuGet画廊证实了这一点:

https://www.nuget.org/packages/System.Security.Claims/4.0.1-beta-23409

另一条线索是,你的错误消息说,它搜索dotnet文件夹。我还不完全确定这些生成器是如何工作的,但这仅仅是核心目标框架的名字。

相关问题