我有一个要转换为ObservableCollection
的列表,这是我的代码
var list = Models.Lands.FromJson(responce.Result.ToString());
this.Lands = new ObservableCollection<Land>( list );
FromJson
返回了一个List<Models.Land>
,而this.Lands是一个ObservableCollection<Models.Land>
。
new ObservableCollection<Models.Land>( list )
给我以下错误:
无法从System.Collections.Generic.List <>转换为 System.Collections.Generic.IEnumerable <>,
我认为构造函数对于List <>对象是重载的。
答案 0 :(得分:0)
尝试使用非通用var关键字。
List<Land> list =Models.Lands.FromJson(responce.Result.ToString());
var collection = new ObservableCollection<Land>(list);
答案 1 :(得分:0)
我认为您可以执行以下操作来避免问题,但仍使用单行代码:
this.Lands = new ObservableCollection<Land>( list.ToArray<Land>());
但是我不确定这是否是一种有效的方法。
答案 2 :(得分:-1)
在我的浏览器中工作:https://dotnetfiddle.net/VVB8YY
public static void Main()
{
var list = new List<String>{"a", "b", "c"};
var collection = new ObservableCollection<string>(list);
foreach (var value in collection)
{
Console.WriteLine(value);
}
Console.WriteLine("Hello World");
}