【问题标题】:Dual References to IXMLSerializable对 IXMLSerializable 的双重引用
【发布时间】:2017-09-16 06:38:10
【问题描述】:

我有一个在 .NET 标准库中实现 IXMLSerializable 的类,但我无法编译该库,因为它在两个地方引用了 IXMLSerializable。输出如下:

错误 CS0433:类型 'IXmlSerializable' 存在于两者中 'System.Xml.ReaderWriter,版本=4.1.0.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 和 'System.Xml.XmlSerializer, 版本=4.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a'

我只在依赖项下看到一个引用(System.Xml.XmlSerializer),我需要 XML 属性。这是我第一次破解 .Net 标准库,所以这里有什么我遗漏的吗?

【问题讨论】:

    标签: c# .net


    【解决方案1】:

    尝试将您对 System.Xml.XmlSerializer 的引用升级到版本 4.1.0.0。 错误消息说您有两个对该库的引用,但使用的是不同的版本。 System.Xml.ReaderWriter 使用的版本比您的项目新,因此您需要获取该版本。

    您也可以尝试删除对 System.Xml.XmlSerializer 的引用或将其切换到旧版本。

    【讨论】:

    • 我不确定如何更新它。如果我删除了引用,那么我将无权访问 [XMLAnyElement] 或 [XMLElement(ElementName = "---")] 属性。感觉就像是 22 号陷阱……
    • 好的,我想出了如何升级它。我必须将它添加为 nuget 包而不是程序集引用,现在该库构建了。
    猜你喜欢
    • 2023-04-09
    • 2022-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多