App.configの属性名を大文字小文字区別なく検索するには?

解決


モモ  2009-05-27 20:04:05  No: 145934

VB.Net2005です。
App.configに以下のように指定しています。
--------------------------------
<UserInfoSettings>
  <UserInfo>
    <add user_id="User1" user_name="username1"/>
    <add user_id="User2" user_name="username2"/>
  </UserInfo>
</UserInfoSettings>
--------------------------------
これらを検索するのに
--------------------------------
Public Function Contains(ByVal name As String) As Boolean 
    Return BaseGet(name) IsNot Nothing 
End Function 
--------------------------------
というような共通関数で存在チェックしていますが、
大文字小文字を区別してしまうため、
例えば
Contains("User1")…OK
Contains("user1")…NG
Contains("USER1")…NG
といった具合になります。
これを大文字小文字区別なく(同一視)判定させる方法はありますか?
教えて下さい。
何卒よろしくお願い致します。


さく  2009-05-28 10:31:00  No: 145935

BaseGet(name)  の作り方によるんじゃないですか?


モモ  2009-05-29 18:52:45  No: 145936

このたびはお返事ありがとうございました。
> BaseGet(name)の作り方によるんじゃないですか?
と言いますのは具体的にどのような作り方をおっしゃっていますか?
BaseGet自体が大文字小文字を判定してしまうのでどうしようもないと
思ったのですが。
未熟者で大変申し訳ございませんが、再度ご教授頂けますでしょうか。
何卒よろしくお願い致します。


aetos  2009-05-29 23:13:05  No: 145937

BaseGet ってコレっすか?
http://msdn.microsoft.com/ja-jp/library/fzwx7y26.aspx
モモさんが作ったメソッドじゃなかったんですね。

まぁともかく、あらかじめエントリを全部読みこんでおいて、自分でループしながら目的のキーと比較するしかないんじゃないでしょうかね。


モモ  2009-06-01 20:58:40  No: 145938

このたびはご回答ありがとうございました。
BaseGetAllKeys()で取得したキーを自作for文ループで検索することで
実現することができました。
本当にありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加