2013-06-03 111 views
2

我試圖從c#.net應用程序中的雲中的parse.com數據庫中讀取一些數據,但我堅持獲得我以後的值。因爲它代表的代碼被稱爲在應用程序啓動(現在):parse.com c#查詢,如何得到結果?

Console.WriteLine("called app launch"); 

    var query = ParseObject.GetQuery("Maintenances") 
     .WhereEqualTo("Sent", "true"); 
    IEnumerable<ParseObject> results = await query.FindAsync(); 



    foreach (var record in results) 
    { 
     Console.WriteLine("in for each"); 
     var docket = record.Get<String>("Docket"); 
     Console.WriteLine(docket); 
    } 

所以我查詢一個叫「的維護」該字段「已發送」是「真」類。然後對於名爲「results」的IEnumerable中的每個「記錄」,我現在試圖寫出控制檯用於調試目的。然而,我沒有得到var「docket」中的錯誤信息,如

「無法投射'System.Collections.Generic.List`1 [System.Object]類型的對象來鍵入' System.String」。」

被吐出。但是,當處於中斷模式(在Visual Studio 2012 express中)時,我將鼠標懸停在「記錄」上,我可以看到該記錄是一個Parse.ParseObject,然後如果我單擊Results視圖(其中提到「展開結果視圖將枚舉IEnumerable 「)我可以看到班級內的所有鑰匙及其正確的相應值!

我想我需要「枚舉IEnumerable」在我的代碼,然後挖出正確的值,但我不知道如何做到這一點。任何人都可以使用帶查詢的Parse.com SDK幫助/指向我一個很好的c#教程,並使用它的結果將是非常讚賞。

回答

3

嘗試將代碼轉換的方法

public async void getdata(String Z,bool b) 
      { 
       var query = ParseObject.GetQuery("Maintenances") 
      .WhereEqualTo("z", "b"); 
       IEnumerable<ParseObject> results = await query.FindAsync(); 



       foreach (var record in results) 
       { 
        Console.WriteLine("in for each"); 
        var docket = record.Get<String>("Docket"); 
        Console.WriteLine(docket); 
       } 
      }