在反序列化我的一个DTO时,我收到以下异常,是否有任何解决方法而不必使用IXmlSerializable?
“Types”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
{
}
}
**** UPDATE /溶液****
This解决了我遇到的特殊问题。
答案 0 :(得分:4)
您的两个班级名称完全相同。在C#中没问题,因为它们位于不同的名称空间中 - 一个位于RRA.Core.Services.DataContracts.AR中,一个位于RRA.Core.Services.DataContracts.ReferenceData中。您需要为XML做同样的事情。
在两个Status类上,设置DataContract属性的Namespace和Name属性以区分它们。