iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 10
1
自我挑戰組

全端工程師的日常挑戰三十日系列 第 10

在 ASP.NET MVC 5 預設專案範本中透過 ASP.NET Identity 由 Email 改用 Username 登入

在 ASP.NET MVC 5 預設專案範本中透過 ASP.NET Identity 由 Email 改用 Username 登入

ASP.NET MVC 5 使用新的會員系統 - ASP.NET Identity,預設的專案範本,幫我們建立了基本的會員系統,就是以ASP.NET Identity,其中註冊登入都是以 E-mail 為帳號,剛好專案的使用者希望用簡單的帳號(不想每次都打 email),就來看看要修改哪些地方吧

一、預設專案範本

建立專案--> 預設 MVC 專案範本

create
defaulttemplate

註冊

registerwithemail

登入

loginwithemail

二、開始修改

1. 註冊

1-1. 註冊畫面
Views/Account/Register.cshtml

registercshtml

將 Email 改為 Username

registercshtml2

1-2. 註冊 Model
Models/AccountViewModel.cs RegisterViewModel

registermodel
registerdone

  1. Email --> Username
  2. Display(Name="Email") --> Display(Name="Username")
  3. 移除 [EmailAddress]

    沒有移除[EmailAddress] 出現的錯誤
    emialattibute

1-3. 註冊功能
Contrllers/AccountController.cs Register

register
REGISTERCHANGE
REGISTERCHANGEDONE

  1. Username = model.Email 改為 Username = model.Username

    由此可知,其實本來就有 Username 這個欄位,只是預設用 email 取代了

  2. ,Email = model.Email 刪除

1-4. Identity 設定
App_Start/IdentityConfig.cs ApplicationUserManager
  • RequireUniqueEmail = true --> RequireUniqueEmail = false

indentitychanged
未修改時會出現錯誤
needemail

2. 登入

login

2-1. 登入畫面
Views/Login.cshtml

logincshtml
Email --> Username
logincshtmldone

2-2. 修改 登入 Model
Models/AccountViewModel.cs LoginViewModel

loginviewmodel
loginviewmodeldone

  1. Email --> Username
  2. Display(Name="Email") --> Display(Name="Username")
  3. 移除 [EmailAddress]
2-3. 登入功能
Contrllers/AccountController.cs login

loginfunction

  • model.Email --> model.Username

loginfunctiondone

完成修改

  1. 註冊

register1

  1. 登入

2login

登入的帳號從 Email 改為 Username ,改動範圍並不大,也沒什麼機會了解到 ASP.NET Identity,接下來再找時間來做一些測試修改,好好了解 ASP.NET Identity


上一篇
用 Markdown 與 Reveal.js 來製作簡報
下一篇
Local Git Remote SVN(本機使用 Git,版控 Server 使用 SVN)
系列文
全端工程師的日常挑戰三十日31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言