ASP.net – Przekazywanie danych z kontrolera do widoku.

Loading Likes...

Prędzej czy później spotkasz się z przekazywaniem różnych zmiennych pomiędzy odpowiednimi częściami Twojej aplikacji, dlatego pokażę Ci na prostym przykładzie w jaki sposób odpowiednio przekazać dane.

Aby przekazać dane z kontrolera do widoku, można użyć:

  • ViewBag.nazwa
  • ViewData[‘nazwa’]
  • TempData[‘nazwa’]

Naszym przykładem jest prosty e-mail sender. Powiedźmy, że mamy na naszej stronie formularz zgłoszeniowy i chcemy odbierać różnego rodzaju e-maile od naszych klientów. Zakładamy, że po prawidłowym wysłaniu e-maila przez użytkownika chcemy pokazać mu komunikat z wiadomością o prawidłowym wysłaniu e-maila.

Ponieważ będziemy sprawdzali w widoku czy zmienna jest ustawiona, skorzystamy z trzeciej możliwości czyli TempData.

Spójrzmy najpierw w nasz kontroler odpowiedzialny za widok z formularzem zgłoszeniowym. Przyjrzyjmy się bliżej części kodu odpowiedzialnej za wysyłanie e-maila.

Po prawidłowym przesłaniu maila należy ustawić zmienną z komunikatem. Dlatego dopisujemy jedną linijkę. Całość wygląda tak:

Teraz wystarczy do naszego widoku dopisać sprawdzanie czy jest ustawiona zmienna o nazwie “Success” i w przypadku gdy jest, żeby wyświetlić komunikat. Przy pomocy Razor dopisujemy do naszego widoku z formularzem:

Teraz po prawidłowym wysłaniu e-maila, klient zobaczy komunikat

“Sukces! Wiadomość została wysłana”

You May Also Like

About the Author: Jerzy Kołakowski

Pasjonat informatyki, bloger. Full-stack Developer Technologie:
  • ASP.NET MVC
  • ASP.NET CORE
  • Angular 2+

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Facebook