MVC2 What's new part 1.
MVC 2 nowości.
MVC2 ujrzało światło dzienne już jakiś czas temu. Ba już dwa miesiące temu doczekaliśmy się MVC3. Pora uaktualnić wiedzę. Więc krok za krokiem - co nowego w MVC2.
1. Opcjonalne paramety.
.NET 4 wprowadza opcjonalne parametry. MVC2 może czerpać korzyści z tego faktu np.
2. Dostępne są nowe snipety przyspieszające wklepywanie kodu.
3. Action selectors
Action selector filters to określenie atrybutów nadawanych metodom kontrolera, na które zwraca uwagę IActionInvoker szukając metody do wykonania odpowiadającej żądaniu.
W MVC1 atrybutów było dwa:
ActionName - nadpisujący nazwę metody
AcceptVerbs - ogranicza wywołanie metody do wyspecyfikowanego HttpVerb.
Operacje Get powinny unikać modyfikacji danych, ponieważ mogą one być cachowane.
W MVC2 zapis został uproszczony i mamy HttpPost, HttpGet, HttpPut, HttpDelete, do wykorzystania dwóch ostatnich wymagany jest HttpMethodOverride gdyż standardowo przeglądarki posługują się tylko Get i Post.
MVC2 ujrzało światło dzienne już jakiś czas temu. Ba już dwa miesiące temu doczekaliśmy się MVC3. Pora uaktualnić wiedzę. Więc krok za krokiem - co nowego w MVC2.
1. Opcjonalne paramety.
.NET 4 wprowadza opcjonalne parametry. MVC2 może czerpać korzyści z tego faktu np.
public ActionResult Index (int Page = 1) { // }
2. Dostępne są nowe snipety przyspieszające wklepywanie kodu.
3. Action selectors
Action selector filters to określenie atrybutów nadawanych metodom kontrolera, na które zwraca uwagę IActionInvoker szukając metody do wykonania odpowiadającej żądaniu.
W MVC1 atrybutów było dwa:
ActionName - nadpisujący nazwę metody
AcceptVerbs - ogranicza wywołanie metody do wyspecyfikowanego HttpVerb.
[ActionName("Modyfy")] [AcceptVerbs(HttpVerbs.Post)] public ActionResult Edit(Contact contact) { }HttpVerbs.Post odpowiada tylko na wywołania Post, które powinny być zarezerwowane dla metod edytujących dane po stronie serwera.
Operacje Get powinny unikać modyfikacji danych, ponieważ mogą one być cachowane.
W MVC2 zapis został uproszczony i mamy HttpPost, HttpGet, HttpPut, HttpDelete, do wykorzystania dwóch ostatnich wymagany jest HttpMethodOverride gdyż standardowo przeglądarki posługują się tylko Get i Post.
[HttpPost] public ActionResult Edit(Contact contact) { }RequiredHttps może zostać zastosowany na poziomie całego kontrolera bądź dowolnej metody - wykonuje redirect na SSLowy odpowienik strony.
Komentarze
Prześlij komentarz