UserId
匿名ユーザーからaspnet メンバーシップ フィールドを取得しようとしています。
web.config で匿名識別を有効にしました:
<anonymousIdentification enabled="true" />
プロファイルも作成しました。
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ApplicationServices"
applicationName="/" />
</providers>
<properties>
<add name="Email" type="System.String" allowAnonymous="true"/>
<add name="SomethingElse" type="System.Int32" allowAnonymous="true"/>
</properties>
</profile>
aspnetdb\aspnet_Users
プロファイル情報が設定されている匿名ユーザーのデータがテーブルに表示されます。
Userid PropertyNames PropertyValuesString
36139818-4245-45dd-99cb-2a721d43f9c5 Email:S:0:17: me@example.com
「Userid」値を取得する方法を見つける必要があります。
使用できません:
Membership.Provider.GetUser(Request.AnonymousID, false);
Request.AnonymousID は別の GUID であり、36139818-4245-45dd-99cb-2a721d43f9c5 と等しくありません。
このユーザー ID を取得する方法はありますか。匿名ユーザーの不完全なアクティビティに関連付けたい。の主キーを使用するaspnet_Users
ことは、独自の GUID を作成するよりも望ましい方法です (作成してプロファイルに保存することもできます)。
これは基本的にこの質問のだまされていますが、実際に質問に答えたことはありません。