對DataContractSerializer徹底沮喪,我試圖在XmlSerializer中使用IXmlSerializable類型在WCF中啓動並運行。在WCF中使用XmlSerializer序列化IXmlSerializable類型
我已經實現了IXmlSerializable 和我的類中的XmlSchemaProvider被序列化併爲我的OperationContract聲明瞭[XmlSerializerFormat]。
使用複雜的架構,我得到試圖查看WSDL以下錯誤:
"Schema type information provided by IXmlSerializable is invalid:
Reference to undeclared attribute group 'anAttributeGroupInMySchema'"
該模式具有不同的包括(此屬性在其中的一個聲明)。我甚至在代碼中添加了包含的模式(schema.Includes
),但無濟於事。
即使在最簡單的例子項目(簡單的模式與1元和2個屬性,簡單對應的類,你的名字),我終於突破這個錯誤,但碰到右轉入:
"WCF_IXmlSerializable.TestClass.TestSchemaProvider() must return a valid type
name. Type 'TEST' cannot be found in the targetNamespace='www.test.com'."
可悲的是我不知道是什麼有效的類型名稱。這當然不是我的XSD,AFAICS的元素名稱。
任何想法?
編輯:
實施例的源代碼可以在線here觀看。
你能發佈最簡單的例子的代碼? – MiMo 2013-02-20 22:08:55
已添加到原始帖子。 – 2013-02-21 10:21:55