如何配置WebMethods以使用DataContractJsonSerializer?

3
看起来 ASP.NET Web 方法使用 JavaScriptSerializer,因为它忽略了我的对象上的 [DataContract] 和 [DataMember] 属性。
我有一个对象长这样:
[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以便它尊重DataMember注释?

1个回答

4

[WebMethod]和任何数据契约序列化器都是完全不相关的技术,它们不能混用。如果您想使用DataContractJsonSerializer,则需要使用WCF,而不是[WebMethod]所使用的旧ASMX技术。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接