如何从控制器返回空 Json?

问题描述 投票:0回答:2

开发商!

我在

stackoverflow
上发现了类似的问题,但解决方案对我没有帮助。所以我又发帖了

我正在尝试从控制器返回 Json 类型的集合。但我不想返回

null
,而是像
Enumerable.Empty<>()
这样的空集合。我也在其他网站上搜索过,但没有任何帮助。

我尝试了

new EmptyResult()
(来自
stackoverflow
的解决方案,但没有成功)

这是代码。

public JsonResult GetOrderDetail(int? id)
{
if(id.HasValue)
{
    var first = ObjectFactory.GetInstance<ICustomerRepository>().Method();
    var second = ObjectFactory.GetInstance<IShopRepository>().Method();
    return Json(new
    {
        first,
        second
    }
}
return null;
}

所以,这里我想返回一个空集合而不是 null。是否可以?我该怎么做? 我是 C# 新手。如果这个问题一开始就很愚蠢或错误,我很抱歉。

c# json collections controller
2个回答
0
投票

Json.NET

使用

Json.NET
时,您可以使用并清空
JObject
JArray

这是在 C# 中使用 JSON 最常见和推荐的方法。可以通过 NuGet 将其添加到项目中。


0
投票

我找到了解决方案。我只需要这样做。我写了

null
来代替
Json(new EmptyResult())
。所以该方法最终不会返回任何内容,但不会返回空值。

© www.soinside.com 2019 - 2024. All rights reserved.