這是一個簡單的問題,說明如下
Step01. 在Action中設定 TempData[“message”] = “此帳號已被註冊”;
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = await UserManager.FindByNameAsync(model.UserName);
if (user != null)
{
//TempData 只會被讀一次,之後就會失效
TempData["message"] = "此帳號已被註冊";
return View(model);
}else
{
//執行註冊
//完成後,轉頁
}
}
return View(model);
}
Step02.在 _layout.cshtml 中判斷 TempData[“message”] 有沒有值,有值就出現alert
<!DOCTYPE html>
<html lang="zh-TW">
<head>
@if (TempData["message"] != null)
{
<script type="text/javascript">
var message = @Html.Raw(Json.Encode(TempData["message"]));
alert(message);
</script>
}
</head>
<body>
@RenderBody()
</body>
</html>
