0
カテゴリとサブカテゴリの間にツリー構造を構築する必要があります。私は、関係を生成するためにハンドラを使用しています。カテゴリとサブカテゴリとそのサブカテゴリからのツリー構造の構築
例えば、私のSQLテーブルだからカテゴリがwhihそのthorughループがする再帰プログラムを使用して、このイムを行うには
toyota prius prius SP prius PS blue yaris auris ford focus focus EX mondeo mustang
など
のように見えます
GlobalID for top-level parents 1000 Id CategoryName ParentId 1 toyota 1000 2 ford 1000 5 prius 1 6 prius SP 5 7 prius SP blue 6 8 focus 2 9 mondeo 2 10 mustang 2 11 focus EX 8 ...
含まれてい子カテゴリー。
しかし、ツリー構造を追加してaspxページに戻すにはどうすればよいですか。
私が使用しているコードは、この
のようにaspxページにJSONツリー構造を返すために、どのように// To get all the parent categories
List<Category> objChildren = new List<Category>();
public List<Category> GetCategories(int categoryId)
{
IQueryable<Category> cats = from ca in db.Categories
where ca.ParentId == categoryId && ca.ParentId != nonPageId
select ca;
return cats.ToList();
}
List<Category> parentCategories = GetCategories(1000);
foreach(Category _category in parentCategories)
{
GetChildCats(_category);
}
public void GetChildCats(Category cat)
{
objChildren.Add(cat);
List<Category> cats = GetCategories(cat.CatId);
if (cats.Count != 0)
{
foreach (Category cate in cats)
{
GetChildCats(cate);
}
}
}
ある
</pre>
So the categories looks like
<pre>
[0] => toyota
[0] => prius
[0] => prius SP
[0] => prius PS blue
[1] => yaris
[2] => auris
[1] => ford
[0] => focus
[0] => focus EX
[1] => mondeo
[2] => mustang
</pre>
こんにちは私はそれがnullまたは1000に保つことができるように任意の違いを作ると思います。しかし、私は上記のJSON形式を出力するネストされた方法で子カテゴリのリストとその子を追加する際に苦労しています。 Imはその出力を得るのに苦労しています。ありがとう – user840491
EFがID 1000の親を見つけようとすると意味があります。また、データベースの観点から、1000を置くと、参照整合性を利用できなくなり、FKを置くことができなくなります。そこ。オブジェクトモデルがある場合は、JSONシリアライザがそのジョブを行います。 – ivowiblo