- - PR -
C#でのNamedValuesの使用
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-01-06 11:39
いつもお世話になってます。
C#で開発を行っているのですが、あるメソッドの戻り値としてNamedValuesで返そうと思ったのですが、C#ではNamedValuesはあまりメジャーに使用されるものではないのですかね? 返したい値は [名前(string)、値(string)] × n なだけですので、配列(string[2,n])で返してしまえばいいのかもしれませんが、エラーチェックメソッドのためエラーなしの場合は何も値は返さないので、コレクション系で返すべきなのだろうなと考えています。 「名前」の部分は重複する可能性があるため、HashTableではキーが重複してしまうので使用できません。 ArrayListに配列(string[])をaddして・・・というのはあまりスマートではないような気がしてしまい、、、。 こういう場合は、どういう形でリターンするのが最良なのでしょう。経験が足りずくだらない質問ですみません。お知恵をお貸しください。 よろしくお願いいたします。 |
|
投稿日時: 2005-01-06 13:06
System.Collections.Specialized.NameValueCollection
が最適かと思われます。 NameValueCollection は、重複するキーが存在する場合は NameValueCollection.Item プロパティの値がコンマ区切りになりますので、必要に応じて NameValueCollection.GetValues メソッドを呼び出して値を配列で取り出します。 |
|
投稿日時: 2005-01-06 13:14
禰宜と申します。
プロパティを2つ持つクラスを作成して、 それをコレクションに追加し、戻り値にする方法がまず思いつきます。 型チェックや細かい制御をするならばCollectionBaseクラスを継承して カスタムコレクションを作成するのもひとつの方法ですよね。 |
|
投稿日時: 2005-01-06 14:21
Nilpoさん、禰宜さん ありがとうございました。
NameValueCollectionを使用して値を戻すことにしました。 どうもありがとうございました。 |
1