Я пытаюсь создать приложение для Windows Phone 8, которое отображает данные в LongListSelector, которые заполнены из базы данных SQL CE, поставляемой с приложением. Я думаю, что у меня есть открытие и чтение из функций базы данных, но я не могу правильно использовать LINQ to SQL для группировки данных для LLS.Использование LongListSelector с развернутой базой данных
У меня есть класс базы данных со столом и соответствующими столбцами. Я использую вспомогательный класс «KeyedList» добавить общедоступное имя для данных из msdn sample code:
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 к 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 и ценю всю помощь!
Я думаю, проблема в том, что мой класс KeyedList не принимает правильный тип данных. Какой тип данных является объектом базы данных SQL CE? Вероятно, это не IEnumerable. Кто-нибудь знает, как я могу изменить класс KeyedList, чтобы принять весь тип базы данных? – WiteCastle