我刚刚下载了SortableBindingList,并尝试将其分配给此LINQ查询(而不是var):
var q = from r in document.Descendants("release")
select new
{
Release = r.Attribute("id").Value,
Artist = String.Join(";", r.Element("artists").Descendants("artist").Select(x => x.Element("name").Value).ToArray()),
Album = r.Element("title").Value
};
它可能并不难,但是我对如何做到这一点感到非常困惑。
一些帮助将不胜感激!
编辑
静态类:
public static class LINQExtension
{
public static SortableBindingList<object> ToSbl(this IEnumerable<object> items)
{
return new SortableBindingList<object>(items);
}
}
分配:
SortableBindingList<object> sbl = LINQExtension.ToSbl(q);
releases_dataGridView.DataSource = sbl;
最佳答案
因为您使用的是匿名类型,所以需要使用类型推断来创建它:
public static SortableBindingList<T> ToSbl(this IEnumerable<T> items) {
return new SortableBindingList<T>(items);
}
var sbl = (...).ToSbl();