繁体   English   中英

使用json将Android连接到ASP.NET MVC

[英]Connecting Android to ASP.NET MVC with json

我有一个asp.net MVC 2.0应用程序。 如果我想走那条路线,我也有WFC服务。 但是我并不特别喜欢用Java解析xml。 (我已经有7年没有使用Java了)。 这是我第一次使用eclipse,所以请向我解释一些东西,例如我是android / java noob。

经过一些研究,我想我想将我的MVC网站用作一种静态服务,以便在android和服务器之间来回传递json。 我知道如何将Json传递出控制器:

public ActionResult SomeActionMethod() 
{
    return Json(new {foo="bar", hello="World"});
}

如何连接到服务,然后将json转换为我的android应用程序中的对象?

在高层,使用HttpClient从RESTful服务获取数据,并使用JSONObject解析响应。 当您将一些代码放在一起时,如果遇到困难,我们可以为您提供更多帮助

为了翻译JSON对象,我个人使用了杰克逊解析器。 在此处获取.jar库: http : //jackson.codehaus.org/1.7.3/jackson-all-1.7.3.jar

这是一个有关如何使用它的示例(有许多不同的方法可能会让您更加满意。有关更多信息,请参阅jackson网站):

        JsonNode userData = null;
        ObjectMapper mapper = new ObjectMapper();
        try {
            userData = mapper.readValue(res.getEntity().getContent(), JsonNode.class);
            String name = (String)userData.get("name").getTextValue();
        } catch (Exception e) {
            alert(R.string.errorGeneral);
            e.printStackTrace();
            return;
        }

至于http客户端,您可以执行此操作

HttpResponse res;
        DefaultHttpClient httpclient = new DefaultHttpClient();
        try{
            HttpGet get = new HttpGet(URI.create("http://yourlink"));
            res = httpclient.execute(get);
        }catch(Exception e){
            e.printStackTrace();
        }

Android在其SDK中内置了JSON解析器-程序包为org.json

除此之外,您可以使用像Gson这样的库,该库将json解析包装在易于使用的API中。 这是与WCF示例相同的简短教程: Gson示例/教程

希望以上信息对您有用。

除此之外,对于您决定继续使用Android本机应用程序和WCF Json服务的决定,我要说一下拙见。 如果您发现处理Android开发有些麻烦-如果您对.NET MVC和ASP.NET感到满意,则应查看诸如Sencha Touch- Snecha Touch URL之类的框架。

Sencha Touch是可通过您的ASPX页面生成的javascript框架-该框架生成的外观与Android和iPhone的本机外观相似。 您可以在设备上试用示例。 这将使您节省学习新语言和API sdk的工作量-灵活地通过原生支持JSON的JavaScript框架使用RESTful服务。

我认为-我不了解具体情况,您最好选择平台。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM