如何使用c#

时间:2015-08-03 08:46:33

标签: javascript c# jquery json json.net

我尝试使用

var myobject = JsonConvert.SerializeObject(Customer);

Customer属性中的问题就像

FirstName我的服务期望像firstName这样的json输入 {"firstName":"Neo"}

声明JsonConvert.SerializeObject(Customer);给了我{"FirstName":"Neo"}这是错误的。

  

那么当JsonConvert.SerializeObject发生时我如何更改第一个字母?

或者如果使用Customer对象,如何仅将一个参数作为输入json firstname

3 个答案:

答案 0 :(得分:2)

您应该使用src来自定义命名:

public class Customer
{
    [JsonProperty("firstName")]
    public string FirstName { get; set; }
}

答案 1 :(得分:1)

你可以这样使用。使用DataMember属性,它会按照提及的方式进行选择。

[DataContract(Namespace = "")]
public class Customer 
{
    [DataMember(Name = "firstName")]
    public string FirstName { get; set; }
}

答案 2 :(得分:1)

您可以定义数据需要序列化的方式。 使用webapi时,我们可以在webapi配置的register方法中将CamelCasePropertyNamesContractResolver(json.net库的一部分)定义为格式化程序。

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    { 
       config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();            
    }
}

上面的代码特别适用于webapi,但我相信在不使用webapi时,类似的方法可以成为解决方案。