2

我正在尝试在 ac# .net 应用程序中从云中的 parse.com 数据库中读取一些数据,但我一直无法获取我想要的值。代码在应用启动时被调用(现在):

  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);
  }

所以我正在查询一个名为“Maintenances”的类,其中“Sent”字段为“true”。然后,对于名为“results”的 IEnumerable 中的每个“记录”,我现在正尝试将其写入控制台以进行调试。但是,我没有在 var "docket" 中获得正确的数据,并出现错误,例如

“无法将 'System.Collections.Generic.List`1[System.Object]' 类型的对象转换为 'System.String' 类型。”

被吐出来。但是,当处于中断模式(在 Visual Studio 2012 Express 中)时,我将鼠标悬停在“记录”上,我可以看到该记录是 Parse.ParseObject,然后如果我单击结果视图(其中提到“扩展结果视图将枚举 IEnumerable ") 我可以看到类中的所有键及其正确的对应值!

我想我需要在我的代码中“枚举 IEnumerable”,然后挖掘出正确的值,但我不知道该怎么做。任何人都可以帮助/指向一个很好的 c# 教程,使用 Parse.com SDK 进行查询并使用结果,将不胜感激。

4

1 回答 1

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);
                }
            }
于 2013-06-11T17:04:35.767 回答