c# - 如何在此 .NET 控制器方法中正确检索请求 JSON 有效负载?
问题描述
我有这个控制器方法处理一个POST请求:
[SharePointContextWebAPIFilter]
[HttpPost]
[ActionName("InviaMailAlProtocollo")]
public IHttpActionResult InviaMailAlProtocollo(string siglaIdUor)
{
Console.WriteLine("INTO InviaMailAlProtocollo()" + siglaIdUor);
Console.WriteLine("INTO InviaAlProtocollo()" + siglaIdUor);
string requestContent = Request.Content.ToString();
return Ok("TEST");
}
我正在执行一个POST请求,在请求正文中传递一个 JSON 文档。
如何在我的控制器方法中正确检索和打印此 JSON 文档?
解决方案
首先需要在此处声明一个数据传输对象(DTO)详细信息 在您的模型文件夹中,该文件夹看起来与 json 对象相同。
Forexmaple 你有一个 json 对象,如下所示:
{ ID:22,姓名:“易卜拉欣”,儿童:[“Name1”,“Name2”,“Name3”] }
制作一个相应的普通旧 Csharp 对象(Poco),如下所示:
public class ParentBasicInfo
{
public int Id {get ;set;}
public string Name{get ;set;}
public List<string>Children{get ;set;}
}
在您的控制器中放置您的 poco 实例:
代替:
public IHttpActionResult InviaMailAlProtocollo(string siglaIdUor)
{
}
和 :
public IHttpActionResult InviaMailAlProtocollo(ParentBasicInfo siglaIdUor)
{
}
所有 json 对象都将嵌入 siglaIdUor
您可以像访问任何对象一样访问其属性。
希望有帮助。
推荐阅读
- visual-studio-code - 看起来像 Jupyter 实验室的 VS 代码主题
- android - 检查导航图是否在 backstack 上
- mongodb - 我无法在命令提示符下打开 mongo dB
- google-apps-script - 从 CSV 文件中间分离数据而不使用脚本中的行号
- javascript - 如何获取随机定位的对象的属性值
- javascript - 将多个值保存到 LocalStorage 中的同一类型,然后检索这些值
- javascript - 如何在“for循环”控制的绘图功能中控制html5画布中的帧速率
- html - 使用 .htaccess 文件时出现内部错误,但为什么呢?
- angular - 在 Intellij/Webstorm 中显示 es-lint html 错误
- numpy - numpy - 有没有办法在 arr[1, [0, 2, 0, 2, 0]] += 1 处引起多个增量