Я пытаюсь получить поле членства в 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: me@example.com
Мне просто нужно найти, как получить значение 'Userid'.
Невозможно использовать:
Membership.Provider.GetUser(Request.AnonymousID, false);
Request.AnonymousID - это другой GUID, который не равен 36139818-4245-45dd-99cb-2a721d43f9c5.
Есть ли способ получить этот ID пользователя? Я хочу связать это с неполной деятельностью для анонимного пользователя. Использование первичного ключа aspnet_Users
предпочтительнее, чем создание собственного GUID (который я мог бы сделать и сохранить в профиле).
Это, по сути, обман этого вопроса , но на вопрос так и не был дан ответ.