by WebSurfer
2010年7月31日 16:04
これはあまり役に立たないかもしれませんが・・・
プロファイル機能を使用する場合、認証されていないエンティティ(匿名ユーザー)を識別するための ID が必要になります。
anonymousIdentification 要素の enabled 属性を true に設定すると(デフォルトでは false)、ASP.NET は、匿名ユーザーに自動的に ID を与えます。以下は、その ID の取得方法です。
まず、web.config で、anonymousIdentification 要素と profile 要素を設定します。以下の設定は最低限必要です。
<anonymousIdentification enabled="true" />
<profile>
<properties>
<add name="Dummy" />
</properties>
</profile>
上記では properties の name はとりあえず Dummy としていますが、実際にプロファイルを使用する場合は適切な名前をつけてください(例えば、ユーザーの漢字の名前をプロファイルに保存する場合は KanjiName にするなど)。
ユーザーを識別するための ID は以下のようにして取得できます。
string anonymousId = Profile.UserName;
Froms 認証では、匿名ユーザーの ID は 14106048-46df-4104-a78d-0fda2b577365 のような Guid の文字列になり、認証されると登録済みのユーザー名に変わります。