我让这种控制器方法处理 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文档?
答案 0 :(得分:1)
首先需要声明数据传输对象(DTO)Details Here 在模型文件夹中,看起来与json对象相同。
Forexmaple,您有一个json对象,如下所示:
{ 编号: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
您可以像访问任何对象一样访问其属性。
希望有帮助。