1
사용자가 등록을 마쳤을 때 팝업 메시지 (성공 또는 오류)를 만들기 위해 열심히 노력하고 있습니다. 그래서 AccountController
에서 나는 ViewBag
을 만들었지 만, 즉시 Login
으로 리디렉션되기 때문에 메시지가 나타나지 않거나 갑자기 나타나지 않는 것으로 나타났습니다.등록 후 ASP.NET Entity Framework 성공 메시지
어떻게 메시지를 표시합니까?
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
....
ViewBag.message= "Registered Successfully";
return RedirectToAction("Login", "Account");
}
}
_Layout
보기 :
<div class="container body-content">
@if (ViewBag.message!= null)
{
if (ViewBag.message.Equals("Registered Successfully"))
{
<div class="alert alert-success fade in">
<a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
<strong>Success!</strong> @ViewBag.message
</div>
}
}
@RenderBody()
</div>
'ViewBag'가 데이터를 전달하는 것입니다 보기에 컨트롤러가 있지만 재실행하는 경우 direct ('ViewBag'는 지워짐). 메서드에 메시지를 경로 값으로 전달하거나 'TempData'를 사용하십시오. –
부트 스트랩 경고 대신 간단한 span 요소를 사용하십시오. 작동하면 부트 스트랩 경고가 문제입니다. 그리고 @stephen은 정확합니다. 한 페이지에서 다른 페이지로 리디렉션하는 경우 TemData 사용 –
TempData를 사용하여 부트 스트랩 플래시 메시지를 원할 경우 https://www.nuget.org/packages/Santhos.Web.Mvc.BootstrapFlashMessages/ 내 솔루션을 사용해보십시오. – Santhos