Sonuç olarak seri hale getirilmiş JSON'un öznitelikler için lowercase_underscore kullandığı ASP.NET MVC'deki bir REST API'sı üzerinde çalışıyorum.Özel Json.NET küçük harf alt yapısı için sözleşme çözücü CamelCase
{
first_name: "Charlie",
surname: "Brown"
}
Not lowercase_underscore isimleri şöyledir: Dizge özellikleri FirstName
ve Surname
bir sınıfa Person
itibaren
benim için otomatik olarak bu dönüşüm yapmak için kullandığımız sözleşme çözümleyici geçerli:
public class JsonLowerCaseUnderscoreContractResolver : DefaultContractResolver
{
private Regex regex = new Regex("(?!(^[A-Z]))([A-Z])");
protected override string ResolvePropertyName(string propertyName)
{
return regex.Replace(propertyName, "_$2").ToLower();
}
}
Bu, tüm iyi çalışır, ama Json.NET ile ters nasıl uygulanacağı bilmiyorum. Yani şöyle ki, örneğin, bir API yöntemini ilan edebilir ve uygun nesneye isteği gövdesine gelen JSON dönüştürmek bilir:
public object Put(int id, [FromBody] Person person)