我有以下类在序列化类时抛出InvalidOperationException
public class CustomFieldList : CustomField, IList
{
public CustomFieldList()
{
this.ControlType = Rflex.Framework.MetaData.ControlType.DDL;
}
public Type ReferentielType { get; set; }
public int? CustomCodeTableTypeID { get; set; }
public CustomCodeTableItem Value { get; set; }
public override object TheValue { get { return Value; } }
}
它无法序列化类型,这可能是正常的事情吗?
堆栈(从法语翻译错误,因此不准确):
System.InvalidOperationException:处理XML时出错。 ---> System.InvalidOperationException:无法识别类型Rflex.WebServices.Objects.Reference.CustomCodeTableItem。使用XmlInclude或SoapInclude属性来指定类型..... àMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write32_Type(String n,String ns,Type o,Boolean isNullable,Boolean needType) àMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write33_CustomFieldList(String n,String ns,CustomFieldList o,Boolean isNullable,Boolean needType) àMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write74_JobDescription(String n,String ns,JobDescription o,Boolean isNullable,Boolean needType) àMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write77_Offer(String n,String ns,Offer o,Boolean isNullable,Boolean needType) àMicrosoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write96_Offer(Object o) àMicrosoft.Xml.Serialization.GeneratedAssembly.OfferSerializer.Serialize(Object objectToSerialize,XmlSerializationWriter writer) àSystem.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,Object o,XmlSerializerNamespaces namespaces,String encodingStyle,String id)
我试过了属性,但它不想工作。
先谢谢。
答案 0 :(得分:0)
你需要这个:
[XmlInclude(typeof(Rflex.WebServices.Objects.Reference.CustomCodeTableItem))]
添加到您的Web服务实际返回的类型。