- - PR -
Web.configのsectionGroup
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-23 16:10
現在ASP.NETにてWebアプリを開発しております。
Web.configでsectionGroup、sectionを用いてドロップダウンリストに表示する文字列を定義したところ、思い通りの順番に文字列が登録されなくて困っています。 下記のようにしているのですが、ハッシュテーブルへの登録がどのような順番で 行われるのかがわかりません。 Web.config内で書いてある順番に登録されるものと思っていましたが、 そうではないようです。 どのようにすれば意図した順番で登録することができるのでしょうか? 以上、よろしくお願いします。 Web.config(一部抜粋)
プログラムファイル
| ||||||||
|
投稿日時: 2006-03-23 22:24
ハッシュテーブルに順番はない。
http://blogs.wankuma.com/jitta/archive/2005/12/01/19755.aspx | ||||||||
|
投稿日時: 2006-03-24 10:27
Jitta様、返答ありがとうございます。
ハッシュテーブルの件は理解しました。 今回のようにドロップダウンリストに登録する項目をWeb.configに記載する際にはどのようにしたらよいのでしょうか? そもそもWeb.configに記載することが間違えなのでしょうか? | ||||||||
|
投稿日時: 2006-03-24 10:39
IDictianary の Keys を配列に CopyTo して、その配列を Array.Sort 。 この配列をループで回して対応する IDictionary の要素を取り出す。 とかできそうですが。 | ||||||||
|
投稿日時: 2006-03-24 11:04
ま、どこに定義するべきかってのはいろいろな条件やらなにやらによるので、 特に正解とか間違いとかってことはない(言えない)と思います。 で、まあやるとしたら、 ・Hongliangさんの仰るように、キーでソートする(キー順でよいのなら) ・ちょっと定義が冗長になるけどNameValueSectionHandlerを使う ・単にappSettingsとかに一項目として追加して、カンマ区切りとかで定義する あたりかな カンマ区切りとかはあんまりおすすめではないですね。 キーのソートは、順番を変えたいときにはまる可能性もあります。 ってことで、定義は長くなりますが、NameValueSectionHandlerの方が無難かもしれません。 | ||||||||
|
投稿日時: 2006-03-24 11:07
Hongliang様
目的は達成することができました。 どうもありがとうございました。 | ||||||||
|
投稿日時: 2006-03-24 11:26
なちゃ様、返答ありがとうございます。
NameValueSectionHandlerの方も試してみます。 |
1