我正在尝试通过序列化将一些数据发送到API。但是在JSONSerialization之后,所有的键都变成了小写字母。因此API将结果作为错误请求返回。为什么会这样?我已将Json Property应用于每个领域......但它仍无法正常工作。
public class ShoppingCartDTO
{
[JsonProperty("Userid")]
public string Userid { get; set; }
[JsonProperty("Msgv1")]
public string Msgv1 { get; set; }
[JsonProperty("Data")]
public string Data{ get; set; }
}
在调用API之前,我已将其序列化为:
using (HttpClient client = new HttpClient(new HttpClientHandler() { CookieContainer = container }))
{
var json = JsonConvert.SerializeObject(dto);
}
答案 0 :(得分:4)
如果您的案例敏感客户端无法轻松更新,请从
更改您的启动 services.AddMvc();
到
services
.AddMvc()
.AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());