3

複数の言語をサポートするCMSに取り組んでおり、以下の例のように作成された「pageNames」をドロップダウンに表示したい

Home Page
Second Page
-Child Page1
-Child Page2
Third Page
-Child Page1
-Child Page2
-Child Page3
--Sub Child Page1
--Sub Child Page2

以下は、ページを保存するために使用しているテーブル構造です。SQLとC#コードを使用して試しましたが、正しく理解できませんでした。SQLクエリのみを使用してSQLクエリを送信できるか、C#でコードスニペットを表示してこれを実行できるかどうかを確認してください。

私の側から見ると、私のテーブル構造は問題ないように見えます。この構造に変更を加えても、パフォーマンスを向上させることができます。

tbl_Language

LangID int   -- PK
LangName nVarchar(20) -- English, Arabic, Spanish
Lang_Code varchar(6)  -- en-US, ar-AE etc

tbl_Pages

pageID int
PageName nVarchar(50)
pageTitle nVarchar(200)
pageDesc nVarchar(400)
pageBody nVarchar(Max)
.....
.....
PageParent int
LangID int  -- FK
....
....

前もって感謝します

4

2 に答える 2

0

共通テーブル式を使用して再帰クエリを記述し、SQL側でページのツリー構造をトラバースする場合は、SQL側でそれを実行します。

詳細については、次のリンクをご覧ください。

于 2012-01-06T10:18:38.757 に答える
0

階層IDの使用を検討しましたか?参照: http: //msdn.microsoft.com/en-us/library/bb677173 (v = sql.100).aspx

もちろん、SQL 2008以降が必要ですが、これはあなたがやろうとしていることを目的としています。

于 2012-01-17T22:17:16.370 に答える