我的工作,它返回XML序列生成的(而不是在DataContract
串行)XML REST風格的WCF服務XmlSerialization屬性。WCF:忽略根元素
雖然大多數對象的格式是否正確,是什麼返回根元素似乎被忽略我的XML序列化的屬性。
例如,資源/accounts/
返回我的AccountList類(本身是我自己的ObjectList<T>
類的子類,它有一些應該序列化的屬性)的XML序列化表示。但是我沒有得到我想要的結果。
這裏是我的代碼:
[XmlRoot("accounts")]
public class AccountList : ObjectList<Account> {
}
public class ObjectList<T> : List<T> {
[XmlAttribute("foo")]
public Int32 FooProperty { get; set; }
}
[OperationContract]
[WebGet(UriTemplate="/accounts")]
public AccountList GetAccounts() {
return new AccountList() {
new Account("bilbo baggins"),
new Account("steve ballmer")
};
}
而且這是由Web服務返回:
<arrayOfAccount>
<Account>
<name>biblo baggins</name>
</Account>
<Account>
<name>steve ballmer</name>
</Account>
</arrayOfAccount>
所以,主要的問題是,在爲accountList類我想要的序列被忽略,我也想知道如何得到它,所以「帳戶」是小寫的,就像「名稱」屬性(我在這些屬性上使用了[XmlElement(「name」)],並且它可以正常工作。 10謝謝!
不,根本沒有用,對不起。 – Dai
是的,似乎[return:*]屬性沒有被拾起,太糟糕了。 – alexdej