【问题标题】:JSON format in asp.net web apiasp.net web api中的JSON格式
【发布时间】:2017-01-30 07:29:49
【问题描述】:
在 ASP.NET Web API 中,我将 json 返回为
[{"EmpID":"20160636","FullName":"Md Delower Hossain"}]
但我希望如下:
{"EmpID":"20160636","FullName":"Md Delower Hossain"}
为了我的编程目的,应该省略括号[]。我能做什么?
【问题讨论】:
标签:
c#
json
asp.net-web-api
【解决方案1】:
您可以返回单个元素,而不是从 Web API 端点返回集合:
[HttpGet]
[Route("api/employees")]
public IHttpActionResult Index()
{
IEnumerable<Employee> employees = ...
Employee employee = employees.FirstOrDefault();
return this.Ok(employee);
}
【解决方案2】:
由于您没有在问题中提供任何代码,我假设您返回任何类型的 collection object,这些对象以数组形式序列化为 JSON。
如果您只想返回单个对象,基本上您需要做的就是返回单个对象。如果您的类型称为 Employee,则只需从控制器方法返回一个 Employee 实例。
【解决方案3】:
你必须修剪括号。
stringcurrentJson ="[{"EmpID":"20160636","FullName":"Md Delower Hossain"}]";
var ExpectedJson= JObject.Parse(currentJson .Trim(new char[] { '[', ']' }));
那么你可以在任何你想要的地方使用 ExpectedJson