从API返回的标签值

Aar*_*ron 2 c#

此方法返回a bool和a string-

public (bool active, string name) Report() 
{
}
Run Code Online (Sandbox Code Playgroud)

从我的控制器,我称之为 -

public IActionResult Credit([FromBody] Data data)
{
    return Ok(Report())
}
Run Code Online (Sandbox Code Playgroud)

我得到的回应是这样的 -

{
    "item1": false,
    "item2": "Your name"
}
Run Code Online (Sandbox Code Playgroud)

我如何得到这个回应 -

{
    "Active": false,
    "Name": "Your name"
}
Run Code Online (Sandbox Code Playgroud)

Nko*_*osi 7

快速简便的方法是返回一个匿名类型,从返回的元组中获取值

public IActionResult Credit([FromBody] Data data) 
{
    //...
    var report = Report();
    return Ok(new 
    {
        Active = report.active,
        Name = report.name
    })
}
Run Code Online (Sandbox Code Playgroud)

理想情况下,您应该返回可以从API返回的强类型模型

public class ReportModel 
{
    public string Name { get;set; }
    public bool Active { get;set; }
}
Run Code Online (Sandbox Code Playgroud)

并相应地更新

public ReportModel Report()  
{
    //...
}

public IActionResult Credit([FromBody] Data data) 
{
    //...
    var report = Report();
    return Ok(report);
}
Run Code Online (Sandbox Code Playgroud)