Я пытаюсь получить поле членства aspnet UserId
от анонимного пользователя.
Я включил анонимную идентификацию в 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: [email protected]
Мне просто нужно найти, как получить значение «Идентификатор пользователя».
Нельзя использовать:
Membership.Provider.GetUser(Request.AnonymousID, false);
Request.AnonymousID - это другой GUID, отличный от 36139818-4245-45dd-99cb-2a721d43f9c5.
Есть ли способ получить этот идентификатор пользователя. Я хочу связать это с незавершенной активностью анонимного пользователя. Использование первичного ключа aspnet_Users
предпочтительнее, чем создание собственного идентификатора GUID (который я мог бы сделать и сохранить в профиле).
Это в основном обман этого вопроса, но вопрос был на самом деле никогда не отвечал.