У меня есть этот код, который на внешнем интерфейсе создает зависимые ящики выбора (подкатегории зависят от категории) с использованием LINQ:
foreach (var cat in (from category in KB.Categories
orderby category.name
select category)) {
this.categories.Add(cat.id, cat.name);
}
foreach (var sub_cat in (from subcategory in KB.SubCategories
orderby subcategory.name
select subcategory)) {
this.subcategories.Add(sub_cat.id, sub_cat.name);
if (!this.subcategoryCategory.containsKey) {
this.subcategoryCategory.Add(sub_cat.category_id, new ArrayList());
}
// I'd like to put the sub_cat_id at the end of the arraylist
// for the category_id, but this line doesn't seem to work
//this.subcategoryCategory[sub_cat.category_id] = sub_cat.id;
}
Как я могу это сделать?
Возможно, есть способ построить гигантский объект JSON вместо трех переменных (категорий, подкатегорий, подкатегорий)?
Есть ли способ лучше / другой , который яполностью пропустил?
PS Исходя из другой парадигмы программирования, я делаю это не стандартным способом ASP.NET (webforms или MVC), но я am , использующий код для созданиязначения.