Visual Studio 2012 DLL构建中缺少XmlDocument

4
使用Visual Studio 2012创建一个可移植类库项目,我想使用XmlDocument类(文档链接)。但是即使使用了,也无法找到该库。
using System.Xml;

错误信息如下:
"are you missing a using directive or an assembly reference"

如果我右键单击引用 ->“添加引用”,浏览到dll目录(下面的地址),并选择以下dll:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.XML.dll

然后点击确定,会出现一个错误。
"A reference to 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.XML.dll' could not be added. 
This component is already automatically referenced by the build system."

因此,一个解决办法是使用开源XML解析库。有什么建议吗?Xerces?

但最好使用内置的C#XmlDocument类。

1个回答

2
事实上,XmlDocument并不适用于所有框架,因此可能在PCL中不可用(具体取决于您选择的框架选项)。然而,较新的XDocument通常是可用的 - 如果需要,请尝试添加对System.Xml.Linq.dll的引用。
PCL的整个意义在于它限制您只能使用所选框架中可用的严格子集组件。

感谢您的回复。为了保留最广泛的引用范围,我选择了“.Net Framework 4.5”和“.Net for Windows Store Apps”目标框架。我已经尝试过其他System.XML.*.dll库,但仍然出现相同的错误。 - Nick T
@NickT没错;而且在netcore(又称“Windows Store应用的.Net”)中不存在XmlDocument,所以**无法在此处使用XmlDocument**。不过,您可以使用XDocument - 请参见此处:http://i.stack.imgur.com/bN5N3.png(来自[MSDN](http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.aspx))。 - Marc Gravell
@MarcGravell 有没有办法将一个额外的 API(例如 XmlDocument)添加到 PCL 档案中,你知道所有目标都会支持它? - Danyal Aytekin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接