2013-08-08 1 views
0

Я создаю приложение ASP.NET MVC-4. В моем приложении пользователь может публиковать свои продукты. Я хочу, чтобы независимо от того, был ли пользователь зарегистрирован или нет [Anonymous], он мог размещать там продукты. Для этого я могу использовать SessionId, но я беспокоюсь о том, заканчивается ли сеанс, как я могу обнаружить анонимного пользователя.Как обращаться с анонимным пользователем в приложении mvc?

Я хочу знать о Миграция анонимного профиля для входа в Userprofile. Пожалуйста, предложите мне несколько полезных уроков или ресурсов или логики, с помощью которых я могу это реализовать.

+0

вы имели в виду, как проверить продукты, размещенные Anonymous или нет? – shimron

ответ

0

http://msdn.microsoft.com/en-us/library/ewfkf772(v=vs.100).aspx имеет все.

Используется для переноса летящих профилей в Global.asax

public void Profile_OnMigrateAnonymous(object sender, ProfileMigrateEventArgs args) 
{ 
    ProfileCommon anonymousProfile = Profile.GetProfile(args.AnonymousID); 

    Profile.ZipCode = anonymousProfile.ZipCode; 
    Profile.CityAndState = anonymousProfile.CityAndState; 
    Profile.StockSymbols = anonymousProfile.StockSymbols; 

    //////// 
    // Delete the anonymous profile. If the anonymous ID is not 
    // needed in the rest of the site, remove the anonymous cookie. 

    ProfileManager.DeleteProfile(args.AnonymousID); 
    AnonymousIdentificationModule.ClearAnonymousIdentifier(); 

    // Delete the user row that was created for the anonymous user. 
    Membership.DeleteUser(args.AnonymousID, true); 

} 
+0

Спасибо за ответ, но я работаю с SimpleMembershipProvider, есть ли способ, с помощью которого я могу обрабатывать анонимного пользователя без использования профиля или любой другой новой технологии для обработки анонимных пользовательских данных. Потому что я считаю, что профиль устарел, не так ли? – user1740381

+0

Я не уверен, если тогда будет вызван Profile_OnMigrateAnonymous. Но я так думаю. В любом случае проверьте http://joeandcode.net/simplemembershipprovider-does-not-cater-for-anonymous-users –

+0

Этого действительно нет: проверьте http://aspnetwebstack.codeplex.com/workitem/384 Вы должны использовать полный взорванный членствоProvider –