Tworzenie projektu ASP.NET MVC 2 oraz jego struktura

Pracę z ASP.NET MVC 2 rozpoczyna się od utworzenia nowego projektu. Standardowo w Visual Studio wybieramy File->New->Project (lub korzystam z kombinacji klawiszy Crtl + Shift + N). W Visual Studio 2010 w sekcji Web mamy standardowo do wyboru dwa typy projektów ASP.NET MVC 2: ASP.NET MVC 2 Web Application oraz ASP.NET MVC 2 Empty Web Application, co widać na rysunku poniżej:

image

Czym różnią się oba szablony projektów? Drugi jak sama nazwa mówi tworzy pusty szablon projektu ASP.NET MVC 2. Natomiast w pierwszym szablonie na początku mamy stworzoną prostą stronę ASP.NET MVC 2, która głównie zawiera mechanizm uwierzytelniania. Dzięki czemu nie musimy tego sami pisać, tylko od razu możemy z tego korzystać.

Jedną z zalet ASP.NET MVC w stosunku do klasycznego ASP.NET jest to, że ASP.NET MVC umożliwia łatwe testowanie aplikacji za pomocą testów jednostkowych i ogólnie tworzenie aplikacji zgodnie z metodyką TDD. Dlatego podczas tworzenia nowego projektu ASP.NET MVC Visual Studio pyta się, czy ma wygenerować specjalny projekt dla testów jednostkowych. Co widać na rysunku poniżej:

image

Możemy sobie zdecydować, czy chcemy, aby Visual Studio wygenerowało testy jednostkowe. A jeśli tak to możemy zdefiniować sobie nazwę projektu oraz wybrać framework użyty do testów jednostkowych np. Visual Studio Unit Test lub NUnit.

Struktura projektu

W ASP.NET MVC bardzo ważna jest struktura projektu i konwencje w niej użyte. Na rysunku poniżej widać solution explorer dla nowo wygenerowanego projektu (szablon ASP.NET MVC 2 Web Application):

image

Na rysunku widać, że w ramach solution są dwa projekty: projekt ASP.NET MVC oraz projekt dla testów jednostkowych. Projektem testów jednostkowych zajmować się będziemy w jednym z kolejnych wpisów.

W głównym projekcie rozwiązania – projekt ASP.NET MVC – znajduje się kilka katalogów:

  • Content – w tym katalogu znajdują się różnego rodzaju pliki wykorzystywane na stronie. Pliki takiej jak grafika, pliki kaskadowych stylów itp.
  • Controllers – tutaj znajdują się klasy kontrolerów.
  • Models – tutaj znajdować się będą klasy modelu.
  • Scripts – tutaj znajdują się pliki skryptów java script. Domyślnie są dodane pliki dla biblioteki Microsoft Ajax oraz jquery.
  • Views – w tym katalogu znajdują się katalogi dla poszczególnych grupy widoków. Ważna jest konwencja nazewnicza. Nazwy katalogów odpowiadają dla nazw kontrolerów. I tak na przykładowym rysunku widać dwa kontrolery (AccountController oraz HomeController) w katalogu Controllers i odpowiadające im dwa katalogi dla widoków dostępnych dla tych kontrolerów (katalog Account oraz Home w katalogu Views). Teoretycznie konwencje można zmieniać ale jednak lepiej zostawić ją jaka jest.

Dodatkowo w katalogu Views znajduje się specjalny katalog Shared, w którym znajdują się wspólne widoki, kontroli czy master page dla wszystkich widoków z pozostałych katalogów. W przykładzie są to widok błędów, kontrolka do logowania użytkownika w aplikacji oraz główny master page.

Dwoma pozostałymi elementami projektu to plik konfiguracyjny Web.config oraz Global.asax. Pierwszy plik to plik konfiguracyjny aplikacji. W drugim natomiast znajduje się globalna klasa aplikacji, a w niej bardzo ważny routing, o którym dokładnie będzie jeszcze w jednej z części tej serii artykułów.

Tags: ,
Categories: Techniczne

Permalink E-mail | Kick it! | DZone it! | del.icio.us Komentarze (0) Post RSSRSS comment feed

Dodaj komentarz


(Będzie pokazywało Gravatar ikon)

  Country flag

biuquote
  • Komentarz
  • Przegląd
Loading