在这里呆了半天;
1)我从服务中返回此课程;
public class ServiceResult
{
public object Value { get; set; }
public string ExceptionMessage { get; set; }
public double Duration { get; set; }
public int Count { get; set; }
}
2)
public class KResult
{
public int Count { get; set; }
public KResultItem[] Items { get; set; }
}
3)
public class KResultItem
{
public string Name { get; set; }
public string Surname { get; set; }
public DateTime Date { get; set; }
}
当我尝试将Value设置为我的2级并反序列化它时,我得到了异常。
我从wcf获得了这个例外;
异常; 元素' http://schemas.datacontract.org/2004/07/Test.Services:Value'包含映射到名称' http://schemas.datacontract.org/2004/07/Test.Services:KResult'的类型的数据。反序列化器不知道映射到此名称的任何类型。考虑使用DataContractResolver或添加对应于' KResult'到已知类型列表 - 例如,通过使用KnownTypeAttribute属性或将其添加到传递给DataContractSerializer的已知类型列表。
我的界面;
[ServiceContract]
public interface IBaseService
{
[OperationContract]
ServiceResult Execute(ServiceCommand serviceCommand);
}
说真的,我不知道我现在想念的是什么,但是我无法通过这个,任何帮助都会很棒,让我的日子过得真快!
第一行动
我添加了来自异常ServiceResult类的建议,如下所示;
[KnownType(typeof(KResult))]
[KnownType(typeof(KResultItem))]
public class ServiceResult
{
public object Value { get; set; }
public string ExceptionMessage { get; set; }
public double Duration { get; set; }
public int Count { get; set; }
}
仍然有同样的例外。
非常感谢大家。