2011-06-23 28 views
3

看起來的ASP.NET Web方法使用JavaScriptSerializer,因爲它忽略了我的對象我的[DataContract]和[DataMember]標註屬性。如何配置的WebMethods使用DataContractJsonSerializer

我有一個對象,看起來像這樣:

[DataContract] 
public class MyObject 
{ 
    [DataMember("firstField")] 
    public string FirstField { get; set; } 
    [DataMember("secondField")] 
    public string SecondField { get; set; } 
} 

我的Web方法是這樣的:

[WebMethod] 
public static IEnumerable<MyObject> GetData() { ... } 

除其他事項外,我想JSON屬性名出來爲firstField而不是FirstField

是否有配置的WebMethods使用DataContractJsonSerializer,使其尊重數據成員的註釋的方法嗎?

回答

4

[WebMethod]和任何數據合同序列化是技術完全無關的碎片,它們不能混用。如果你想使用DataContractJsonSerializer,那麼你需要使用WCF,而不是[WebMethod]使用的舊ASMX技術。

相關問題