簡體   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