我已經返回.NET對象般地套管JSON,我已經做到了這一點,像這樣:C#POST JSON作爲駱駝情況下爲所有請求
// Web API configuration and services
var formatters = config.Formatters;
var jsonFormatter = formatters.JsonFormatter;
var serializerSettings = jsonFormatter.SerializerSettings;
// Remove XML formatting
formatters.Remove(config.Formatters.XmlFormatter);
jsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));
// Configure our JSON output
serializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
serializerSettings.Formatting = Formatting.Indented;
這一切工作正常,但今天我張貼到外部API和出現錯誤,事實證明,問題是使用Pascal格式而不是Camel格式的json格式。我上傳的數據是這樣的:
{"CartId":"8fb3792f-81af-45e6-92f6-f08366624f1e","Id":"944990015513953203","Quantity":5}
我尋找了一圈,發現一個解決方案轉向將數據轉化成駱駝的情況下,像這樣:
var serializer = new JsonSerializer()
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
var json = JObject.FromObject(model, serializer);
但你可以猜測,這是不是真的適合因爲我不想在每個控制器的每個POST操作中都這樣做。我會假設上面的WebApiConfig會應用於所有的響應以及請求。
有誰知道我可以打開一個全球駱駝案例開關?