我遇到了最新的.net版本和.xdocument库的问题.
我的project.json看起来像这样:
"dependencies": { "Microsoft.AspNet.Mvc": "6.0.0-beta4","Microsoft.AspNet.Server.IIS": "1.0.0-beta4","Microsoft.AspNet.Server.WebListener": "1.0.0-beta4","Microsoft.AspNet.StaticFiles": "1.0.0-beta4","System.Xml.XDocument": "4.0.10-beta-23109" },"commands": { "web": "Microsoft.AspNet.Hosting --config hosting.ini" },"frameworks": { "dnx451": { } },
我的代码是这样的:
var xd = XDocument.Parse(str);
但我收到错误消息:
Severity Code Description Project File Line Error CS0433 The type 'XDocument' exists in both 'System.Xml.Linq,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089' and 'System.Xml.XDocument,Version=4.0.10.0,PublicKeyToken=b03f5f7f11d50a3a' WebApplication2.DNX 4.5.1 ValuesController.cs 23
只是尝试使用System.Xml.Linq.XDocument xd =或System.Xml.XDocument xd =解决它似乎不起作用,我还能尝试什么?
解决方法
我已经通过添加System.Xml.XDocument依赖项作为
framework assembly(这意味着将使用安装了完整.Net版本的GAC中的一个)来为dnx451框架添加解决方案,并且仅作为dnxcore框架的nuget包:
"frameworks": { "dnx451": { "frameworkAssemblies": { "System.Xml.Linq": "4.0.0.0" } },"dnxcore50": { "dependencies": { "System.Xml.XDocument": "4.0.10" } } }
我认为在编译dnx451版本时,它会在nuget包和安装完整.Net框架的dll之间混淆
原文地址:https://www.jb51.cc/csharp/243564.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。