.NET Core API返回列表和列表计数

时间:2018-07-10 04:57:21

标签: c# asp.net-core asp.net-core-webapi anonymous-types

我正在尝试使用OK函数使用.NET Core 2.1 API将复杂对象作为JSON返回。

复杂对象由一个匿名对象数组和整个未过滤数据集的计数组成。

我正在使用一个JavaScript库,期望使用以下格式的JSON:

{ 
  data: dataFiltered,
  count: dataUnfiltered.length
}

经过C#过滤的匿名对象如下所示:

var unfiltedDataCount = product.Where(p => p.CategoryId == categoryId).Count();
var autoCompleteData = products.Select(p => new { name = p.Name, productId = p.ProductId, categoryId = p.CategoryId}).ToList();

这有效:本地行为

return Ok(autoCompleteData);

这不起作用:Visual Studio报告错误(当前上下文中不存在名称“数据”和“计数”。)

return ok( new { data: autoCompleteData, count: unfiltedDataCount});

1 个答案:

答案 0 :(得分:1)

您使用了错误的语法。

不正确

return ok( new { data: autoCompleteData, count: unfiltedDataCount});

正确

return ok( new { data= autoCompleteData, count= unfiltedDataCount});

您可以在此处查看更多示例:Anonymous types MSDN