MVC4:包括以JSON对象名称(MVC4: Include object name in Json

2019-09-16 09:45发布

我有我一直在挣扎了一段时间MVC4(测试版)问题的问题。 问题是,我想创建一个加为我的WebAPI对象名称的JSON。 将JSON必须创建,这是作为接收侧需要此。 我的.NET / MVC知识有限,所以请多多包涵。 我想关于这个问题的搜索,但MVC4仍处于测试阶段,很难找到关于这个问题的好消息。

我已经导入我的解决方案的JSON.NET格式化,但是这不会添加对象名称

现在在MVC4创建的JSON:

[{"ID":36,"Name":"Test3","Description":"Description Test3"},{"ID": 37,"Name": "Test4","Description": "Description Test4"}]

而且我想JSON看起来像这样:

{"Goal":[{"ID":36,"Name":"Test3","Description":"Description Test3"},{"ID": 37,"Name": "Test4","Description": "Description Test4"}]}

所以,我喜欢被包含在JSON对象名称(目标)。

在我的API控制器的代码我使用的是这样的:

    StoreDBContext db = new StoreDBContext();

    //
    // GET /api/goals
    public IQueryable<Goals> Get()
    {
        return db.Goals;
    }

我想我需要遍历某处添加对象的名字,但我不知道如何...希望有人能帮助我这个!

Answer 1:

返回是这样的:

new { Goal = db.Goals().AsEnumerable().ToList() }

您可以使用匿名对象添加不在对象属性和东西。

你也可以写为JSON.NET定制的转换器,如果你想让它正确地反序列化,但如果你不关心输出的反序列化,上述解决方案将正常工作。



文章来源: MVC4: Include object name in Json