Членство в ASP.NET получает идентификатор анонимного пользователя - PullRequest
2 голосов
/ 12 апреля 2009

У меня есть проект, над которым я работаю, который использует членство .net. Мы хотим расширить проект, чтобы позволить анонимным пользователям, но, похоже, мы столкнулись с трудностями, поскольку мы используем UserId таблицы aspnet_Users в качестве внешнего ключа во многих наших таблицах базы данных.

Следующий вызов возвращает ноль, поскольку в таблице aspnet_Membership нет записи для анонимных пользователей

Membership.Provider.GetUser(Request.AnonymousID, false);

Есть ли способ получить UserId анонимного пользователя через стандартные API? или мне придется написать расширение, которое может это сделать?

1 Ответ

2 голосов
/ 12 апреля 2009

Насколько я знаю, речь идет о доступе. Если на вашем веб-сайте есть модули или страницы, которые не нуждаются в доступе. Сначала вам нужно создать пользователя в таблице пользователей aspnet. Возможно, этот анонимный пользователь создан неправильно, что приводит к нулевому значению.

Кроме того, если вы хотите отслеживать этих анонимных пользователей, вы должны установить для allowanonymous значение true в конфигурации вашего провайдера профиля.

См. Эту статью для получения дополнительной помощи http://www.odetocode.com/Articles/440.aspx

...