2014-12-03 28 views
0

我從ASP.NET Web API返回JSON。 Json確實沒有問題地返回,但是在Json數組的開始處沒有對象名稱供我在android應用程序中使用。如何在json上設置對象名稱

有無論如何設置它?

這裏是正在返回

對象的名稱應該是在開始的JSON。不是剛開始使用ID

[{"ID":1197,"CustomerGuid":"ea0af124-ab88-45d8-88f7-3f122ef53c04","UserTrackingID":"2624","EmailAddress":"[email protected]","Password":"Pakistan99","IsBusiness":null,"FullName":"Mashood","DateRegistered":"2014-11-26T18:51:47.977","PostCode":"44000","BusinessName":null,"FactualID":null,"FacebookToken":null,"Country":null},{"ID":1202,"CustomerGuid":"30c3781e-506c-490a-a27d-03a29696bdcd","UserTrackingID":"2643","EmailAddress":"[email protected]","Password":"george69","IsBusiness":null,"FullName":"Pending Customer","DateRegistered":"2014-11-27T08:08:04.29","PostCode":"4220","BusinessName":null,"FactualID":null,"FacebookToken":null,"Country":null},{"ID":1203,"CustomerGuid":"cf7d09e4-2e84-4b16-b38c-d32579d1c6c4","UserTrackingID":"2646","EmailAddress":"[email protected]","Password":"george69","IsBusiness":true,"FullName":"tester","DateRegistered":"2014-11-28T00:12:40.523","PostCode":"4102","BusinessName":"tester","FactualID":null,"FacebookToken":null,"Country":null}] 


Public Class UsersController 
    Inherits System.Web.Http.ApiController 

    Private db As New PushStateNovember7Entities 
    ' GET: api/Users 
    Function GetUsers() As IQueryable(Of User) 
     Return db.Users 
    End Function 

End Class 

您還可以查看該項目住在和訪問helppage @

+0

請顯示您正在序列化的類。另外,你是唱ASP.NET MVC還是ASP.NET Web API? (控制器或ApiController) – Eilon 2014-12-03 00:44:08

回答

1

不知道爲什麼會ü開頭需要一個名字這將封裝的數據名稱

內部列表。如果所有的u需要的是解析Android中的JSON數組,你可以做這樣的事情:

假設你有以下的用戶等級:

public class User { 
    private string _ID; 
    private string _CustomerGuid; 
    //and so on 

    public string setID(string Id){ _ID = Id;} 
    public string getID(){ return _ID;} 

    public string setCustomerGuid(string customerGuid){ _CustomerGuid = customerGuid;} 
    public string getCustomerGuid(){ return _CustomerGuid;} 
} 

要獲得/解析JSON數組,你可以這樣做是這樣的:

JSONArray array = new JSONArray(yourApiReturnedJsonStringHere); 
ArrayList<User> users = new ArrayList<User>(); 

for (int i=0; i < array.length(); i++) { 
    User user = new User(); 

    JSONObject jObj = array.getJSONObject(i); 

    user.setID(jObj.getString("ID")); 
    user.setCustomerGuid(jObj.getString("CustomerGuid")); 
    //..... 

    users.add(user); 
} 
+0

是的,謝謝,我已經瞭解到,有兩個選項或getJsonObject和getJsonArray,仍然在研究,再次感謝 – 2014-12-03 09:54:04

0

你可以試試這個

var response = new ApiResponse<T>(); 
response.Data = db.Users; 
return response; 

如果您不使用API​​控制器然後簡單地創建Response類和

public Response<T> : where T : class 
{ 
    public T Data {get; set;} 
} 

return new Response<IList<Users>>() { Data = db.Users};