【问题标题】:ASP.NET WEB API: Why I dont have complete Json?ASP.NET WEB API:为什么我没有完整的 Json?
【发布时间】:2014-07-22 07:22:09
【问题描述】:

我的问题是,当我浏览到服务 URL 时,我看到“键值”对,但我没有看到数组或对象的名称,我需要该名称,因为我想将该服务用于 android。

看起来像这样:

我的代码如下所示:

1.在 ValueController 我有方法:

[AcceptVerbs("GET", "POST")]   
public List<BuzzMonitor.Web.Message> Search(string text, DateTime dateFrom, DateTime dateTo, [ModelBinder]List<int> themeIds, [ModelBinder]List<int> sourceIds)
{
    MessageHandler mh = new MessageHandler();

    List<BuzzMonitor.Web.Message> messages = null;

    messages = mh.Search(text,dateFrom,dateTo,themeIds,sourceIds);

    return messages;
}

2。在 Global.asax 我添加了:

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));

当我没有看到完整的 JSON 并且只看到键:值对时,是否有人知道缺少什么?谢谢你的帮助!

【问题讨论】:

    标签: c# android asp.net json asp.net-web-api


    【解决方案1】:

    我认为您认为您没有看到数组名称或类,对吗?这是一个错误?

    答案是否定的。

    原因?嗯,JSON 的发明是为了通过网络轻松共享对象,主要目标是使其独立于底层架构 -

    http://www.json.org/

    这就是为什么您看不到数组名称或变量名称,只有对象表示法。那就是 JSON 代表 Java Script Object Notation。根据提供的json格式的数据重新构造对象是接收方的责任。

    在您的情况下,messages 是一个包含数据列表的数组,输出也是如此 -

    [] 表示数组,{} 在里面表示它只有一个对象。

    编辑:您也可以使用它来解析 json -

    http://developer.android.com/reference/org/json/JSONTokener.html

    【讨论】:

    • 是的,你很好地理解了我。现在,我需要查看数组名称,你知道如何完成吗?因为从android应用程序我需要继续这个服务,然后获取数据。我需要查看数组名称,因为我需要解析 JSon ... Android 在这种情况下非常严格,如果我没有 arrayName,我将无法根据键获取值。抱歉,如果不能很好地向您解释我想要完成的事情。
    • 您不需要数组名称,只需解析数据并将其加载到数组变量中即可。这可能会有所帮助 - stackoverflow.com/questions/5566669/…
    • Android 中不需要数组名来​​解析它。没有它也能正常工作!
    猜你喜欢
    • 2012-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    • 2012-03-16
    相关资源
    最近更新 更多