У меня есть метод действия VerifyNewUser (), который вызывается, когда пользователь нажимает URL-адрес в своем электронном письме (URL подтверждения регистрации).
Метод действия устанавливает свойство bool в ViewBag, обновляет пользователя допроверенный пользователь, затем я загружаю домашнюю страницу с пользователем, который автоматически вошел в систему. В представлении / Home / Index я хочу проверить ViewBag для установленного мной свойства и отобразить диалоговое окно jquery ui, если оно истинно.
Однако мой ViewBag имеет значение null, и скрипт пропускается.Примечание. Я храню сообщение в homeController.ViewBag, поэтому я подумал, что это сработает.Возможно, есть лучший способ сделать это без ViewBag?
public ActionResult VerifyNewUser()
{
if(everything checks out)
{
HomeController homeController = new HomeController();
homeController.ViewBag.RegisterationLoad = true;
homeController.ViewBag.VerificationMessage = "Thank you! Your account has been activated";
return View("../Home/Index", null);
}
}
ничего особенного в контроллере Home:
public ActionResult Index(){
return View();
}
В домашнем представлении у меня есть этот код, который должен проверять, еслидомашняя страница загружается после нажатия на URL подтверждения и должна отображать диалоговое окно jquery ui:
@if (ViewBag.RegistrationLoad == "true")
{
<script type="text/javascript">
$("<div></div>").html("<span>@ViewBag.VerificationMessage</span>").dialog({
width: 365, height: 165, minWidth: 365, minHeight: 165, maxWidth: 365, maxHeight: 165,
autoOpen: true, modal: true, dialogClass: 'noTitleDialog', position: "center",
buttons: {
"Ok": function () {
$(this).remove();
}
}
});
</script>
}
Спасибо за ваше время