C# HttpClient-PostAsJsonAsync
在使用C# HttpClient-PostAsJsonAsync,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,在使用PostAsJsonAsync(..)扩展方法时,我遇到了一个简单但恼人的问题,我在任何地方都找不到有关修复以下问题的信息 我的问题是生成的Json使用了PascaCasing,我需要按照实际标准使用camelCasing 下面是一个简单的示例,可以重现这个问题(来源:): 尝试只发送一个匿名类型 var user = new { firstName = txtFirst.Text, company = txtCompany.Text, lastName = txt
PostAsJsonAsync(..)
扩展方法时,我遇到了一个简单但恼人的问题,我在任何地方都找不到有关修复以下问题的信息
我的问题是生成的Json使用了PascaCasing
,我需要按照实际标准使用camelCasing
下面是一个简单的示例,可以重现这个问题(来源:):
尝试只发送一个匿名类型
var user = new {
firstName = txtFirst.Text,
company = txtCompany.Text,
lastName = txtLas.Text,
email = txtEmail.Text,
phoneNo = txtPhone.Text,
email = txtEmail.Text
};
var response = client.PostAsJsonAsync("api/User", user).Result;
在我的情况下,我发送的是匿名类型,但这绝对不是我的解决方案,因为我有多个级别的复杂数据结构,不需要在每次请求时重新定义我的模型。@lostballon gotcha。。也许这会有帮助,或者是的,我最终使用了Newtonsoft,但我不敢相信他们花时间编写了
PostAsJsonAsync(…)
,结果却完全没有用。有没有可能我们都遗漏了什么?为什么你说PostAsJsonAsync没有用?因为它使用Pascal大小写?这个问题说明没有标准:-与MVC中的视图一样-我倾向于使用单独的“ViewModels”发送到外部系统,因为它们很少镜像我们的内部系统。如何从ViewModel而不是razor页面调用PostAsJsonAsync?
var user = new {
firstName = txtFirst.Text,
company = txtCompany.Text,
lastName = txtLas.Text,
email = txtEmail.Text,
phoneNo = txtPhone.Text,
email = txtEmail.Text
};
var response = client.PostAsJsonAsync("api/User", user).Result;