Json 我如何定制获得回报的内容
我希望API在返回JSON之前返回一个自定义文本。现在它只返回JSON,但如何在JSON之前显示另一个静态文本 假设我的GET返回这个Json 我如何定制获得回报的内容,json,asp.net-core,http-get,Json,Asp.net Core,Http Get,我希望API在返回JSON之前返回一个自定义文本。现在它只返回JSON,但如何在JSON之前显示另一个静态文本 假设我的GET返回这个[{“name”:“name”…}]我想返回StaticText[{“name”:“name”…}]StaticText“ [HttpGet] 公共异步任务GetCustomers() { return wait_context.Customers.toListSync(); } 根据我的评论和您的编辑,您可以创建一个类来包装您的结果和静态文本: public c
[{“name”:“name”…}]
我想返回StaticText[{“name”:“name”…}]StaticText“
[HttpGet]
公共异步任务GetCustomers()
{
return wait_context.Customers.toListSync();
}
根据我的评论和您的编辑,您可以创建一个类来包装您的结果和静态文本:
public class MyResult
{
public IEnumerable<Customers> Customers {get; set;}
public string StaticText {get; set;}
}
公共类MyResult
{
公共IEnumerable客户{get;set;}
公共字符串StaticText{get;set;}
}
按如下方式更改控制器代码:
[HttpGet]
public async Task<ActionResult<MyResult>> GetCustomers()
{
var list = await _context.Customers.ToListAsync();
return new MyResult()
{
Customers = list,
StaticText = "my static text"
};
}
[HttpGet]
公共异步任务GetCustomers()
{
var list=wait_context.Customers.toListSync();
返回新的MyResult()
{
客户=列表,
StaticText=“我的静态文本”
};
}
您只需将结果字符串化,然后连接所需的字符串
。。。
var yourcuststr=“我是一个自定义字符串!";
var result=wait_context.Customers.toListSync();
var resultStr=JsonConvert.SerializeObject(结果);
返回内容($“{resultStr}{yourcustmstr}”,“application/json”);
...
是否要添加自定义标题?您只有一个“主标题”“答复。您可以将实际响应和静态文本组合成一个包含这两种信息的JSON对象。这对你有用吗?@citronas我的问题可能很愚蠢,但我是新来的员工,所以我编辑了我的问题,可能更清楚为什么你不改变方法结果?@ilkerkaran我不知道我该用什么this@lunarfry假设您只想修改此方法的结果并添加答案。如果您想将静态tet添加到每个get方法结果中,则需要另一种方法。i think OP不希望在{}中使用静态文本。这就是我添加另一个答案的原因。快乐编码@ilkerkaran这是有效的JSON吗?是的,我想要的是第二个答案,不过还是谢谢你的帮助。我学到了另一件事:)@citronas实际上不是,它不是一个有效的JSON字符串。我只是想得到OP想要的。我很确定这是个x,y问题。但只要Op快乐,我就快乐=)
[HttpGet]
public async Task<ActionResult<MyResult>> GetCustomers()
{
var list = await _context.Customers.ToListAsync();
return new MyResult()
{
Customers = list,
StaticText = "my static text"
};
}