我正在尝试为 Windows Phone 8 创建一个应用程序,该应用程序在 LongListSelector 中显示数据,该数据是从应用程序附带的 SQL CE 数据库填充的。我想我已经打开并从数据库功能中读取,但我无法正确使用 LINQ to SQL 对 LLS 的数据进行分组。
我有一个带有表和相应列的数据库类。我正在使用帮助器类“KeyedList”为msdn 示例代码中的数据添加公共名称:
public class KeyedList<TKey, TItem> : List<TItem>
{
public TKey Key { protected set; get; }
public KeyedList(TKey key, IEnumerable<TItem> items)
: base(items)
{
Key = key;
}
public KeyedList(IGrouping<TKey, TItem> grouping)
: base(grouping)
{
Key = grouping.Key;
}
}
然后我得到了我的数据库上下文:
dB = new DataContext(DataContext.DBConnectionString);
最后,这是我尝试使用的 LINQ to SQL:
var items =
from item in dB.TableName
orderby dB.ID
group item by dB.Generation into generation
select new <KeyedList<string,Item>(generation);
var allItems = new List<KeyedList<string, Item>>(items)
我几乎从示例中获取了此代码,但是在创建 allItems 以绑定到 LongListSelector 时,我无法使分组和排序工作。我不断收到无效参数错误。
我是 VB 编程的新手,感谢所有帮助!