Kimlik doğrulama kodu vardır:HttpContext.User.Identity ne zaman ayarlandı?
var authTicket = new FormsAuthenticationTicket(/*blahblah....*/);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName,
FormsAuthentication.Encrypt(authTicket));
Response.Cookies.Add(cookie);
var name = HttpContext.User.Identity.Name; // line 4
ayıklama tablolara koyarak, ben 4. hatta name
boş olduğunu bulmak. Ancak bu tarayıcı oturumunda bir sonraki görüşme yaptığımda, HttpContext.User.Identity.Name
doğru şekilde ayarlanmış.
Bu değer ne zaman ayarlanıyor? Aşağıdaki Üyeliği kullanılıyorsa,
FormsAuthentication.Authenticate(name, password)
ya: sizin ya benziyor Kodunuzdaki itibaren
Sadece neden el ile çerez oluşturup sadece yanıtlamak yerine cevaba eklemek merak ediyorum: FormsAuthentication.SetAuthCookie()? –
Ayrıca bir Auth tanımlama bilgisi ayarlamak üzereyseniz neden HttpContext'ten kullanıcı adını almanız gerektiğini merak ediyor musunuz? Kesinlikle bir Auth çerezi ayarlamak üzereyseniz - bu kullanıcıyı "giriş yapmış" olarak ayarlamak istediğinizi söylüyorsunuz - kullanıcı adlarını bilmiyorsanız bunu nasıl yapabilirsiniz? –
@Nick - nedeni, bu, aşağıdakileri takip edebileceğiniz bir dizi gelişmenin en sonuncusudur: http://stackoverflow.com/q/6586156/7850 –