0

私は会社 A を持っています。この会社を複数の州にリンクする機能が必要であり、各州を複数の都市にリンクすることができます。例えば:

Company A
         \
          - State A
                  |-City A
                  |-City B
         \        |-City C
          - State B
                  |-City A
                  |-City B
         \        |-City C
          - State C
                  |-City A
                  |-City B
                  |-City C

私の質問は次のとおりです。

  1. これをテーブルに格納する最良の方法は何ですか?
  2. 複数のページを更新せずにユーザーがこれを選択できるようにする最も簡単な方法は何ですか?

C# で ASP.NET (Framework 3.5) を使用しています。これを行うことができるコントロールが周りにある場合は、それらへのポインターも非常に高く評価されます。

ありがとう、

ジム

編集:たとえば、「A社」を選択する必要があります。次に、「状態 A」を選択します。「State A」の下で、「City A, B & C」を選択します。次に「State B」を選択し、その下で「City A & B」を選択します。

4

2 に答える 2

2

おそらく、これを 4 つのテーブルに格納する必要があります。

**企業**
名前 その他の情報 会社ID

**州**
名前 OtherInfo StateID

**都市**
名前 StateID CityID OtherInfo

**都市内の企業**
会社 ID 都市 ID

このようにして、州と都市は企業なしで存在できます。

それらを選択するためのコントロールに関しては、単一の都市を選択する場合は、AJAX CascadingDropDownListが最適なオプションです。

複数のページを更新せずにこれを行うことは、少なくとも私があなたを正しく理解していれば、非常に困難であり、おそらくユーザーを混乱させるでしょう. あなたの最善の策は、AJAX を使用する場合としない場合がありますが、それらをできるだけ簡単にすることです。

于 2009-08-06T14:15:55.183 に答える
0

最初の質問に答えるには、次のように保存します。

州
----------------------------
STATE_KEY は NULL 番号ではありません                                                                                                                                                                                        
COUNTRY NOT NULL VARCHAR2(3) (ISO 3 文字コード)                                                                                                                                                                               
STATE_SHORT NOT NULL VARCHAR2(30)                                                                                                                                                                                  
STATE_NAME NOT NULL VARCHAR2(30)  


街
----------------------------
CITY_KEY は NULL 番号ではありません                                                                                                                                                                                        
STATE NOT NULL NUMBER (STATE への FK)                                                                                                                                                         
CITY_NAME NOT NULL VARCHAR2(30)                                                                                                                                                                                  
ラット番号                                                                                                                                                                                        
ログ番号  

会社
----------------------------
STATE_ID NUMBER NOT NULL (状態への外部キー)
.... その他のデータ列.....


考えられることの 1 つは、会社を都市キーにリンクし、代わりに FK を都市にリンクし、usa;fl;null および usa;ca;null のような都市を使用して、その州内のすべての都市を表すことです。このように、特定の都市に基づく会社に変換しても、全体的なスキームは実際には変わりません。常に州にリンクされた会社を扱うことがわかっている場合は、(上記のように) 会社で state_id を実行することをお勧めします。

あなたのプロジェクトで頑張ってください。

于 2009-08-06T14:21:49.077 に答える