Система уведомления о статусе приложения asp.net mvc3 - PullRequest
9 голосов
/ 15 сентября 2011

Мне просто интересно, как реализовать систему уведомлений для приложения asp.net mvc3, как в основном, когда пользователь, вошедший в систему с успешным входом в систему, показывает сообщение, если не сообщение об ошибке.

У меня есть некоторый подход с вышеупомянутымпроблема с сохранением значения свойства в viewmodel, но мы не знаем, как этого добиться, когда мы передаем уведомление от одного контроллера другому контроллеру или от одного действия к другому действию.

как при входе в систему, вход в систему выполнен успешносообщение от контроллера учетной записи к домашнему контроллеру и показывает уведомление на домашней странице, когда пользователь успешно вошел в систему.

пожалуйста, мне действительно будет удобно понять, можете ли вы предоставить пример кода или какой-то лучший подход свышеуказанная проблема.

Thnaks

PS

Вот фрагмент кода, который я пытаюсь использовать с

 public ActionResult Register(UserRegistrationViewModel registrationModel)
 {
   //some logic and when end of the code set the error message and
   //redirect to separate action and after new action can read the message and show
      if(success)  
         return RedirectToAction("Index","Home"); 
      else
         return RedirectToAction("Logon");
 }

Ответы [ 3 ]

9 голосов
/ 15 сентября 2011

Мне нравится использовать плагин purr jQuery

http://code.google.com/p/jquery-purr/

Если я хочу показать сообщение о состоянии, я добавляю его в TempData.Внизу моих страниц у меня есть вспомогательный метод, который, если он находит TempData ["StatusMessage"], он вызывает purr для его отображения.

3 голосов
/ 18 ноября 2011

Вы также можете попробовать MvcNotification . На GitHub вы найдете пример проекта ASP.NET MVC, который показывает несколько способов выполнения уведомлений, в том числе сценарий AJAX.

MvcNotification - это пример приложения, в котором показаны различные способы отображение уведомлений от действий контроллера ASP.NET MVC в ненавязчивый способ.

В настоящее время я использую его, и он хорошо работает ... просто обратите внимание, когда нужно использовать правильный вызов метода, передавая true или false параметру ShowAfterRedirect. В зависимости от обстоятельств код использует свойства контроллера TempData или ViewData. Подробнее об их использовании здесь .

// If you want to display a message after a redirect, for example:
// call ShowMessage with true just before return RedirectToAction("Index");
this.ShowMessage(MessageType.Success, "YourMessage", true);

Авторский блог с подробностями реализации: http://blogs.taiga.nl/martijn/2011/05/03/keep-your-users-informed-with-asp-net-mvc/


Совсем недавно появился тостер .

Простые javascript тост-уведомления. toastr - это библиотека Javascript для неблокирующих уведомлений. JQuery необходимо. Цель состоит в том, чтобы создать простую базовую библиотеку, которая может быть индивидуальные и расширенные.

Такая хорошая библиотека JS!

Вы можете проверить демонстрационную страницу здесь .

Код доступен на GitHub .

0 голосов
/ 07 апреля 2012

Не уверен, сколько людей все еще ищут способ сделать это. Я реализовал очень простой подход к этому в моем текущем приложении и написал руководство в своем блоге о том, как это сделать. Мой метод на самом деле представляет собой комбинацию из трех других, которые я видел (и которые мне сейчас показались слишком сложными, поскольку я только начинаю работать с MVC). В любом случае, я надеюсь, что это поможет любому, кто ищет действительно простой способ сделать это:

http://www.nfynite.com/2012/04/07/simple-mvc-3-notifications-with-razor-and-jquery/

...