2015-10-11 4 views

cevap

14

Aslında e-posta adresini kullanıcı adı olarak kullanıyorsunuz, bu nedenle ASPNetUsers tablosunda, e-posta adresiyle birlikte hem kullanıcı adı hem de e-posta alanlarını göreceksiniz.

AccountController'a gidin, Kayıt yöntemini (POST) arayın.

Değişim bu: Buna

var user = new ApplicationUser { UserName = model.Email, Email = model.Email}; 

:

var user = new ApplicationUser 
      { 
       UserName = model.UserName, 
       Email = model.Email 
      }; 

Sonra Login.cshtml gidip yerine kullanıcı adına karşılık gelen tüm e-posta modeli alanlarını değiştirin.

Son olarak, AccountController'daki Giriş yöntemine (POST) gidin ve model.Email'i model.UserName olarak değiştirin.

var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, 
      model.RememberMe, shouldLockout: false); 

Ayrıca, yeni UserName özelliğinizi tanıtmak için AccountViewModels.cs dosyasında da değişiklikler yapmanız gerekir.

+2

Teşekkürler Jason. 'Model.UserName' yazdığımda sorun kırmızı alt çizgiyi aldığımda ve 'model' yazdığımda bile 'KullanıcıAdı seçeneğini seçmiyorum. –

+0

Kullanıcı adı kullanmaya karar verirseniz, kevinMaxwell, neden ApplicationUser Modelini değiştirmiyorsunuz? – Sakthivel

+0

@ codebrain siz IdentityModels'i mi kastediyorsunuz? –

İlgili konular