2
我在網站上創建一個新用戶。 用戶必須處於活動狀態。 我必須發送一個激活電子郵件到註冊的電子郵件地址與鏈接激活帳戶。 此鏈接必須是已加密以便它不會被攔截。 當用戶點擊該鏈接,系統激活的賬號和登錄他 我user
表包含:註冊用戶的激活郵件MVC
ID
, Username
, Password
, ContactInfoID
, AddressID
, Role
我ContactInformation
表:
ID
, Email
, Tel
, Cell
, Fax
, Name
, Surname
user.ContactInfoID
是我ContactInformation.ID
場。
這是我如何添加用戶:
UserEmailCompare ma = new UserEmailCompare();
ma.email = db.ContactInformations.Where(x => x.EMail != null).Select(x => x.EMail);
if (model.Password != model.PasswordCheck)
{
return ErrorResponse("The password you have entered does not match");
}
else
{
if (ma.email.Contains(model.Email))
{
return ErrorResponse("The e-mail address you have entered has already been registered");
}
else
{
if (ModelState.IsValid)
{
User user;
ContactInformation info;
info = new ContactInformation()
{
EMail = model.Email
};
db.ContactInformations.Add(info);
db.SaveChanges();
var only = db.ContactInformations.FirstOrDefault(x => x.EMail == model.Email).ID;
if (model.UserID == 0)
{ //add
user = new User()
{
Username = model.Username,
Password = Globals.CreateHashPassword(model.Password),
ContactInfoID = only
};
db.Users.Add(user);
}
}
}
}
任何一個可以幫助我走得更遠。 我有類發送電子郵件。
我已經創造了這個類。你能幫我前進嗎? – Hydro
@Hydro我沒有包括*加密*,我認爲在這個階段或任何其他不需要。只要*加密*查詢字符串值(如memberId和激活碼) –
'IsActive'和'ActivationCode'字段應該是什麼類型的字段? – Hydro