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