无法从Parse检索数组

时间:2014-12-15 15:53:08

标签: c# arrays parse-platform

这里的小问题。我正在构建一个以C#和Parse.com作为后端的.NET网站。我在从数据库中取出数组时遇到了一些麻烦。目前我使用以下行作为常规字符串值,这可以正常工作:

string objTitle = vormingObject.Get<string>("title");

但是当我尝试检索数组时,出现错误。

var periodes = vormingObject.Get<string[]>("periodes");
vorming.Periodes = periodes;

我已经尝试将var更改为string [],但这也无法解决问题。任何帮助将不胜感激

编辑:错误:  System.InvalidCastException:无法将类型为'System.Collections.Generic.List`1 [System.Object]'的对象强制转换为'System.String []'

解决方案:正如下面一位用户所说:

 IList<string> Periodes = vormingObject.Get<IList<string>>("periodes");

1 个答案:

答案 0 :(得分:2)

我不知道Parse.com API,但例外:

  

无法将System.Collections.Generic.List<System.Object>类型的对象转换为System.String[]

类型

非常明确:API找到了List<object>,但它无法将其强制转换为请求的字符串数组。将您的代码更改为:

var periodes = vormingObject.Get<List<object>>("periodes");

然后您可以将对象强制转换为适当的类型,例如:

IEnumerable<string> periodStrings = periodes.Cast<string>();