2011-01-12 32 views
1

是否有KnownTypeAttribute的任何類似物,但對於XmlSerializerClass? 如何爲asmx Web服務配置已知類型?什麼是XML序列化的KnownType屬性模擬?

我創建了一個.asmx web服務。現在,客戶端無法序列化請求。所以,我想要類似KnownTypesAttribute的東西來指定哪些類型的序列化器必須使用。

+0

在答案中發佈「XmlInclude」信息,我會對它讚不絕口。 – 2011-01-12 18:55:20

+0

@John Saunders:貼。 – Egor4eg 2011-01-13 08:08:42

回答

2

我不得不XmlIncludeAttribute添加到類用作web.service的輸入參數方法。這使得客戶端生成正確的Web引用,並且XmlSerializer將能夠正確地序列化這個類。

​​
1

可以傳遞已知類型的數組:

XmlSerializer xs = new XmlSerializer(typeof(MyType), 
new Type[] {typeof(MyNestedType)}); 

在這種設置:

public class MyType 
{ 

    public IMyInterface NestedType { // .... implemented by MyNestedType