C# 让XmlDocument在.NET核心和.NET框架之间协作
我们最近将一个库从.NET4.5.2转换为.NETCore2.0。此库有许多返回类型C# 让XmlDocument在.NET核心和.NET框架之间协作,c#,.net,.net-core,xmldocument,C#,.net,.net Core,Xmldocument,我们最近将一个库从.NET4.5.2转换为.NETCore2.0。此库有许多返回类型XmlDocument的方法/属性 我们还有一个应用程序(也在.NET4.5.2中)引用了4.5.2库,现在希望使用核心版本。此应用程序对引用库返回的文档执行某些任务 我假设.NET核心和框架之间的XmlDocument有一些基本的区别(这是我仍在努力理解和解决的部分)。但我对Core非常陌生,还不太了解 下面是一些复制我的问题的简短代码: 核心2.0库 using System.Xml; namespace
XmlDocument
的方法/属性
我们还有一个应用程序(也在.NET4.5.2中)引用了4.5.2库,现在希望使用核心版本。此应用程序对引用库返回的文档执行某些任务
我假设.NET核心和框架之间的XmlDocument
有一些基本的区别(这是我仍在努力理解和解决的部分)。但我对Core非常陌生,还不太了解
下面是一些复制我的问题的简短代码:核心2.0库
using System.Xml;
namespace TestCoreXmlDoc
{
public class Class1
{
public static XmlDocument DoAThing()
{
XmlDocument libDoc = new XmlDocument();
libDoc.LoadXml("<root></root>");
return libDoc;
}
}
}
using System.Xml;
namespace ConsoleAppTextXmlDoc
{
class Program
{
static void Main(string[] args)
{
//Error on below line
XmlDocument appDoc = TestCoreXmlDoc.Class1.DoAThing();
}
}
}
我看到的具体错误是:“对类型'XmlDocument'的引用声明它是在'System.Xml.ReaderWriter'中定义的,但找不到它”
似乎与NuGet有一些关系,但我不确定(我们目前不在这个应用程序中使用NuGet,除非我们需要进行更改,否则我们宁愿保持这种方式)。类中没有根本的区别,但是.NET Core将框架拆分为比常规.NET框架更多的模块(以隔离“旧的”类,例如
XmlDocument
)。你需要NuGet来添加对的引用。谢谢@JeroenMostert-如果你想发布它,我认为这是一个足够的答案!这是.net核心库还是.net标准库?它只能使用.net标准。在.net(完整框架)项目中引用.net core dll不应该起作用。@MartinUllrich-.net core。但看起来我要换成标准:)