Tworzenie kontrolera (VB)
W tym samouczku Stephen Walther pokazuje, jak dodać kontroler do aplikacji ASP.NET MVC.
Celem tego samouczka jest wyjaśnienie sposobu tworzenia nowych kontrolerów MVC ASP.NET. Dowiesz się, jak tworzyć kontrolery zarówno za pomocą opcji menu Dodawanie kontrolera programu Visual Studio, jak i ręcznie tworząc plik klasy.
Korzystanie z opcji menu Dodaj kontroler
Najprostszym sposobem utworzenia nowego kontrolera jest kliknięcie prawym przyciskiem myszy folderu Kontrolery w oknie programu Visual Studio Eksplorator rozwiązań i wybranie opcji menu Dodaj, kontroler (zobacz Rysunek 1). Wybranie tej opcji menu powoduje otwarcie okna dialogowego Dodawanie kontrolera (zobacz Rysunek 2).
Rysunek 01. Dodawanie nowego kontrolera (kliknij, aby wyświetlić obraz pełnowymiarowy)
Rysunek 02. Okno dialogowe Dodawanie kontrolera (kliknij, aby wyświetlić obraz pełnowymiarowy)
Zwróć uwagę, że pierwsza część nazwy kontrolera została wyróżniona w oknie dialogowym Dodawanie kontrolera . Każda nazwa kontrolera musi kończyć się sufiksem Kontroler. Na przykład można utworzyć kontroler o nazwie ProductController , ale nie kontroler o nazwie Product.
Jeśli utworzysz kontroler, który nie ma sufiksu Kontrolera , nie będzie można wywołać kontrolera. Nie rób tego - zmarnowałem niezliczone godziny mojego życia po popełnieniu tego błędu.
Lista 1 — Controllers\ProductController.vb
Public Class ProductController
Inherits System.Web.Mvc.Controller
'
' GET: /Product/
Function Index() As ActionResult
Return View()
End Function
End Class
Zawsze należy tworzyć kontrolery w folderze Kontrolery. W przeciwnym razie będziesz naruszać konwencje ASP.NET MVC i inni deweloperzy będą mieli trudniejszą wiedzę na temat aplikacji.
Metody akcji tworzenia szkieletu
Podczas tworzenia kontrolera możesz automatycznie wygenerować metody akcji Tworzenie, Aktualizowanie i Szczegóły (zobacz Rysunek 3). Jeśli wybierzesz tę opcję, zostanie wygenerowana klasa kontrolera na liście 2.
Rysunek 03. Automatyczne tworzenie metod akcji (kliknij, aby wyświetlić obraz pełnowymiarowy)
Lista 2 — Controllers\CustomerController.vb
Public Class CustomerController
Inherits System.Web.Mvc.Controller
'
' GET: /Customer/
Function Index() As ActionResult
Return View()
End Function
'
' GET: /Customer/Details/5
Function Details(ByVal id As Integer) As ActionResult
Return View()
End Function
'
' GET: /Customer/Create
Function Create() As ActionResult
Return View()
End Function
'
' POST: /Customer/Create
<AcceptVerbs(HttpVerbs.Post)> _
Function Create(ByVal collection As FormCollection) As ActionResult
Try
' TODO: Add insert logic here
Return RedirectToAction("Index")
Catch
Return View()
End Try
End Function
'
' GET: /Customer/Edit/5
Function Edit(ByVal id As Integer) As ActionResult
Return View()
End Function
'
' POST: /Customer/Edit/5
<AcceptVerbs(HttpVerbs.Post)> _
Function Edit(ByVal id As Integer, ByVal collection As FormCollection) As ActionResult
Try
' TODO: Add update logic here
Return RedirectToAction("Index")
Catch
Return View()
End Try
End Function
End Class
Te wygenerowane metody są metodami wycinków. Należy dodać rzeczywistą logikę tworzenia, aktualizowania i wyświetlania szczegółów dla klienta samodzielnie. Ale metody wycinków zapewniają miły punkt wyjścia.
Tworzenie klasy kontrolera
Kontroler ASP.NET MVC jest tylko klasą. Jeśli wolisz, możesz zignorować wygodne szkielety kontrolera programu Visual Studio i utworzyć klasę kontrolera ręcznie. Wykonaj następujące kroki:
- Kliknij prawym przyciskiem myszy folder Kontrolery i wybierz opcję menu Dodaj, Nowy element i wybierz szablon Klasa (zobacz Rysunek 4).
- Nadaj nowej klasie nazwę PersonController.vb i kliknij przycisk Dodaj .
- Zmodyfikuj wynikowy plik klasy tak, aby klasa dziedziczyła z podstawowej klasy System.Web.Mvc.Controller (zobacz List 3).
Rysunek 04. Tworzenie nowej klasy(Kliknij, aby wyświetlić obraz pełnowymiarowy)
Lista 3 — Controllers\PersonController.vb
Public Class PersonController
inherits Controller
Function Index AS String
Return "Hello World!"
End Function
End Class
Kontroler w liście 3 uwidacznia jedną akcję o nazwie Index(), która zwraca ciąg "Hello world!". Tę akcję kontrolera można wywołać, uruchamiając aplikację i żądając adresu URL w następujący sposób:
http://localhost:40071/Person
Uwaga
Serwer ASP.NET Development Server używa losowego numeru portu (na przykład 40071). Podczas wprowadzania adresu URL w celu wywołania kontrolera należy podać odpowiedni numer portu. Numer portu można określić, umieszczając kursor myszy nad ikoną serwera deweloperów ASP.NET w obszarze powiadomień systemu Windows (w prawym dolnym rogu ekranu).
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla