gpt4 book ai didi

c# - 类型 'X' 和 X' 都使用命名空间 'X' 中的 XML 类型名称 '' 。使用 XML 属性为类型指定唯一的 XML 名称和/或命名空间

转载 作者:行者123 更新时间:2023-11-30 15:37:48 27 4
gpt4 key购买 nike

我在反序列化我的一个 DTO 时收到以下异常,有没有办法解决这个问题而不必使用 IXmlSerializable?

“类型‘RRA.Core.Services.DataContracts.ReferenceData.Status’和‘RRA.Core.Services.DataContracts.AR.Status’都使用命名空间‘’中的 XML 类型名称‘Status’。使用 XML属性来为类型指定唯一的 XML 名称和/或命名空间。”

这是 DTO:

namespace RRA.Core.Services.DataContracts.AR
{
using System.Runtime.Serialization;

/// <summary>
/// Status data object
/// </summary>
[DataContract]
public class Status : RRA.Core.Services.DataContracts.ReferenceData.Status
{
}
}

****更新/解决方案****

This解决了我遇到的特定问题。

最佳答案

您的两个类具有完全相同的名称。在 C# 中没关系,因为它们位于不同的命名空间中 - 一个在 RRA.Core.Services.DataContracts.AR 中,一个在 RRA.Core.Services.DataContracts.ReferenceData 中。您需要为 XML 做同样的事情。

在两个 Status 类上,设置 DataContract 属性的 Namespace 和 Name 属性以区分它们。

关于c# - 类型 'X' 和 X' 都使用命名空间 'X' 中的 XML 类型名称 '' 。使用 XML 属性为类型指定唯一的 XML 名称和/或命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12178888/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com