Post on 28-Feb-2019
Wszelkie prawa zastrzeżone Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione Wykonywanie kopii metodą kserograficzną fotograficzną a także kopiowanie książki na nośniku filmowym magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań by zawarte w tej książce informacje były kompletne i rzetelne Nie biorą jednak żadnej odpowiedzialnościani za ich wykorzystanie ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich Autor oraz Wydawnictwo HELION nie ponoszą roacutewnież żadnej odpowiedzialnościza ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce
Redaktor prowadzący Ewelina BurskaProjekt okładki Studio GraviteOlsztyn Obarek Pokoński Pazdrijowski ZapruckiMateriały graficzne na okładce zostały wykorzystane za zgodą Shutterstock
Wydawnictwo HELIONul Kościuszki 1c 44-100 GLIWICEtel 32 231 22 19 32 230 98 63e-mail helionhelionplWWW httphelionpl (księgarnia internetowa katalog książek)
Drogi CzytelnikuJeżeli chcesz ocenić tę książkę zajrzyj pod adres httphelionpluseropinieaspnvsMożesz tam wpisać swoje uwagi spostrzeżenia recenzję
ISBN 978-83-246-3238-1
Copyright copy Helion 2014
Printed in Poland
bull Kup książkębull Poleć książkę bull Oceń książkę
bull Księgarnia internetowabull Lubię to raquo Nasza społeczność
Spis tre ci
Przedmowa 9
Wst p 11
Cz I ASPNET MVC 13
Rozdzia 1 Podstawowe aspekty projektu aplikacji ASPNET MVC 15ASPNET MVC 15Projekt aplikacji MVC 18Szablon projektu 19Struktura projektu aplikacji ASPNET MVC 21Podsumowanie 23
Rozdzia 2 Kontroler i widok 25Funkcje i metody kontrolera 25Projektowanie kontrolera 27Widok 30
Projektowanie widoku 31Transfer danych mi dzy widokiem a kontrolerem 36Podsumowanie 37
Rozdzia 3 Model 39Wprowadzenie 39Baza danych 40Warstwa dost pu do bazy danych 42Logika biznesowa 44Implementacja widoku typu GridView 48Podsumowanie 52
Rozdzia 4 Walidacja danych 53Wprowadzenie 53Atrybuty modelu i walidacja danych w praktyce 55
Przygotowanie projektu aplikacji Kadry 55Widoki kontrolera 58
Kup książkę Poleć książkę
4 ASPNET MVC
Kontroler 63Konfiguracja walidacji danych 66
Walidacja danych po stronie klienta 67Walidacja danych a technologia ADONET Entity Framework 68Podsumowanie 71
Rozdzia 5 Wyra enia regularne a kontrola poprawno ci danych 73Podstawowe informacje o wyra eniach regularnych 73Odnajdywanie znakoacutew specjalnych 74Odnajdywanie znakoacutew i cyfr 74Odnajdywanie znakoacutew w wyznaczonych miejscach a cucha 75Okre lanie liczby wyst pie podanych znakoacutew 76Tworzenie wzorcoacutew 76
Aplikacja 76Kod pocztowy 80Imi e skie 81Walidacja adresu URL 83
Atrybuty modelu wykorzystuj ce wyra enia regularne 84Podsumowanie 88
Rozdzia 6 Asynchroniczne aplikacje internetowe mdash Microsoft AJAX 91Wprowadzenie 91Aktualizacja zawarto ci wybranego elementu witryny 92Cz ciowe od wie anie witryny a fragment widoku 97Ankieta (modu do g osowania) 102Od wie enie widoku mapy serwisu Google 108
Rozdzia 7 Technologia AJAX a biblioteka jQuery 113Wprowadzenie 113Aktualizacja zawarto ci wybranego elementu witryny 113Automatyczne uzupe nienie pola tekstowego 115Mechanizm IntelliSense a sk adnia jQuery 119Podsumowanie 120
Rozdzia 8 Trasowanie adresoacutew URL 121Wprowadzenie 121Wzorce URL 122Domy lne regu y trasowania i wzorce URL 123W asne regu y trasowania 124Zablokowanie obs ugi wybranych da 124Podsumowanie 126
Rozdzia 9 Filtry 127Wprowadzenie 127Podstawowe atrybuty filtroacutew 128
[Authorize] 128[HandleError] 129[OutputCache] 133[RequireHttps] 135[NonAction] 135
Kolejno wykonywania filtroacutew 137
Kup książkę Poleć książkę
Spis tre ci 5
Implementacja w asnych filtroacutew 139Filtry akcji 139Filtry autoryzacyjne wyniku i wyj tkoacutew 144
Podsumowanie 146
Rozdzia 10 Bezpieczne aplikacje internetowe 147Potrzeba zabezpiecze 147Uwierzytelnienie i autoryzacja 149
Mechanizmy uwierzytelnienia zintegrowane z ASPNET 149Konfiguracja uwierzytelnienia 153Autoryzacja 157Grupy u ytkownikoacutew 158
Podsumowanie 160
Rozdzia 11 Konfiguracja zabezpiecze i panel Web Site Administration Tool 161Wprowadzenie 161U ytkownicy grupy i regu y dost pu 163Ustawienia aplikacji oraz odczyt zawarto ci pliku konfiguracyjnego 167Wy czenie aplikacji i konfiguracja serwera SMTP 171Komunikaty o b dach 171Zarz dzanie dostawcami us ug 178Podsumowanie 179
Rozdzia 12 Zabezpieczenie witryny przed z o liwym kodem 181Wprowadzenie 181Dzia anie z o liwego kodu 181Zabezpieczanie pliku konfiguracyjnego 187Podsumowanie 192
Rozdzia 13 Kontroler uwierzytelnienia w aplikacji ASPNET MVC 195Wprowadzenie 195Model 195Klasa kontrolera 198Widoki kontrolera 203Podsumowanie 209
Rozdzia 14 Dynamiczne zarz dzanie u ytkownikami i grupami 211Wprowadzenie 211Kontroler panelu administracyjnego 212Podzia u ytkownikoacutew na grupy 219Podsumowanie 224
Rozdzia 15 Biblioteka Knockout 227Knockout czyli interfejs u ytkownika z wykorzystaniem wzorca MVVM 227Knockout mdash wykorzystanie szablonoacutew JavaScript 230
Cz II Technologie bazodanowew aplikacjach internetowych 235
Rozdzia 16 Podstawy ADONET 237Podstawy relacyjnych baz danych 237Technologia ADONET 238
Kup książkę Poleć książkę
6 ASPNET MVC
Instalacja bazy Northwind 240Po czenie ze roacuted em danych 241Modyfikacja danych w obiekcie DataSet 249
Tworzenie nowych rekordoacutew 250Edycja rekordoacutew 257Wersjonowanie obiektu DataRow i kontrola wprowadzanych danych 263Usuwanie rekordoacutew 270
Rozdzia 17 Obiekt TableAdapter jako pomost mi dzy DataSeta roacuted em danych 273Parametryzacja kwerend 274Edycja danych przy u yciu obiektu TableAdapter 279Integralno danych i ich usuwanie 288Wstawianie danych z wykorzystaniem obiektu TableAdapter 294
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie internetowychaplikacji bazodanowych 301Lista rekordoacutew 301Usuwanie rekordoacutew 305Edycja rekordoacutew 307Tworzenie rekordoacutew 311Formularz z podformularzem (MasterDetail Form) 315
Rozdzia 19 Transakcje 319Tworzenie i r czna kontrola transakcji 319Automatyczne zarz dzanie transakcjami 327Konkurencyjno i poziom izolacji transakcji 332
Rozdzia 20 Bezpiecze stwo w aplikacjach bazodanowych 335Szyfrowanie po czenia 335Zabezpieczenie kodu po redniego przy pomocy Code Access Security (CAS) 338ConnectionString a sposoby uwierzytelnienia w serwerze MS SQL Server 344Uwagi ko cowe dotycz ce projektowania aplikacji bazodanowych 345
Rozdzia 21 Entity Framework 347Podstawy Entity Framework 348
Pierwsze zapytanie 348Detale produktu 352Dodawanie nowego produktu 353Edycja produktu 355Usuwanie produktu 357Tworzenie schematu bazy danych na bazie modelu encji 357Entity Framework i POCO 360
Cz III ASPNET MVC a ASPNET WebForms 365
Rozdzia 22 Integracja komponentoacutew WebForms z aplikacj ASPNET MVCna przyk adzie technologii SQL Server Reporting Services 367Pierwszy raport 368
Konfiguracja roacuted a danych 368Projektowanie raportu 371
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Spis tre ci
Przedmowa 9
Wst p 11
Cz I ASPNET MVC 13
Rozdzia 1 Podstawowe aspekty projektu aplikacji ASPNET MVC 15ASPNET MVC 15Projekt aplikacji MVC 18Szablon projektu 19Struktura projektu aplikacji ASPNET MVC 21Podsumowanie 23
Rozdzia 2 Kontroler i widok 25Funkcje i metody kontrolera 25Projektowanie kontrolera 27Widok 30
Projektowanie widoku 31Transfer danych mi dzy widokiem a kontrolerem 36Podsumowanie 37
Rozdzia 3 Model 39Wprowadzenie 39Baza danych 40Warstwa dost pu do bazy danych 42Logika biznesowa 44Implementacja widoku typu GridView 48Podsumowanie 52
Rozdzia 4 Walidacja danych 53Wprowadzenie 53Atrybuty modelu i walidacja danych w praktyce 55
Przygotowanie projektu aplikacji Kadry 55Widoki kontrolera 58
Kup książkę Poleć książkę
4 ASPNET MVC
Kontroler 63Konfiguracja walidacji danych 66
Walidacja danych po stronie klienta 67Walidacja danych a technologia ADONET Entity Framework 68Podsumowanie 71
Rozdzia 5 Wyra enia regularne a kontrola poprawno ci danych 73Podstawowe informacje o wyra eniach regularnych 73Odnajdywanie znakoacutew specjalnych 74Odnajdywanie znakoacutew i cyfr 74Odnajdywanie znakoacutew w wyznaczonych miejscach a cucha 75Okre lanie liczby wyst pie podanych znakoacutew 76Tworzenie wzorcoacutew 76
Aplikacja 76Kod pocztowy 80Imi e skie 81Walidacja adresu URL 83
Atrybuty modelu wykorzystuj ce wyra enia regularne 84Podsumowanie 88
Rozdzia 6 Asynchroniczne aplikacje internetowe mdash Microsoft AJAX 91Wprowadzenie 91Aktualizacja zawarto ci wybranego elementu witryny 92Cz ciowe od wie anie witryny a fragment widoku 97Ankieta (modu do g osowania) 102Od wie enie widoku mapy serwisu Google 108
Rozdzia 7 Technologia AJAX a biblioteka jQuery 113Wprowadzenie 113Aktualizacja zawarto ci wybranego elementu witryny 113Automatyczne uzupe nienie pola tekstowego 115Mechanizm IntelliSense a sk adnia jQuery 119Podsumowanie 120
Rozdzia 8 Trasowanie adresoacutew URL 121Wprowadzenie 121Wzorce URL 122Domy lne regu y trasowania i wzorce URL 123W asne regu y trasowania 124Zablokowanie obs ugi wybranych da 124Podsumowanie 126
Rozdzia 9 Filtry 127Wprowadzenie 127Podstawowe atrybuty filtroacutew 128
[Authorize] 128[HandleError] 129[OutputCache] 133[RequireHttps] 135[NonAction] 135
Kolejno wykonywania filtroacutew 137
Kup książkę Poleć książkę
Spis tre ci 5
Implementacja w asnych filtroacutew 139Filtry akcji 139Filtry autoryzacyjne wyniku i wyj tkoacutew 144
Podsumowanie 146
Rozdzia 10 Bezpieczne aplikacje internetowe 147Potrzeba zabezpiecze 147Uwierzytelnienie i autoryzacja 149
Mechanizmy uwierzytelnienia zintegrowane z ASPNET 149Konfiguracja uwierzytelnienia 153Autoryzacja 157Grupy u ytkownikoacutew 158
Podsumowanie 160
Rozdzia 11 Konfiguracja zabezpiecze i panel Web Site Administration Tool 161Wprowadzenie 161U ytkownicy grupy i regu y dost pu 163Ustawienia aplikacji oraz odczyt zawarto ci pliku konfiguracyjnego 167Wy czenie aplikacji i konfiguracja serwera SMTP 171Komunikaty o b dach 171Zarz dzanie dostawcami us ug 178Podsumowanie 179
Rozdzia 12 Zabezpieczenie witryny przed z o liwym kodem 181Wprowadzenie 181Dzia anie z o liwego kodu 181Zabezpieczanie pliku konfiguracyjnego 187Podsumowanie 192
Rozdzia 13 Kontroler uwierzytelnienia w aplikacji ASPNET MVC 195Wprowadzenie 195Model 195Klasa kontrolera 198Widoki kontrolera 203Podsumowanie 209
Rozdzia 14 Dynamiczne zarz dzanie u ytkownikami i grupami 211Wprowadzenie 211Kontroler panelu administracyjnego 212Podzia u ytkownikoacutew na grupy 219Podsumowanie 224
Rozdzia 15 Biblioteka Knockout 227Knockout czyli interfejs u ytkownika z wykorzystaniem wzorca MVVM 227Knockout mdash wykorzystanie szablonoacutew JavaScript 230
Cz II Technologie bazodanowew aplikacjach internetowych 235
Rozdzia 16 Podstawy ADONET 237Podstawy relacyjnych baz danych 237Technologia ADONET 238
Kup książkę Poleć książkę
6 ASPNET MVC
Instalacja bazy Northwind 240Po czenie ze roacuted em danych 241Modyfikacja danych w obiekcie DataSet 249
Tworzenie nowych rekordoacutew 250Edycja rekordoacutew 257Wersjonowanie obiektu DataRow i kontrola wprowadzanych danych 263Usuwanie rekordoacutew 270
Rozdzia 17 Obiekt TableAdapter jako pomost mi dzy DataSeta roacuted em danych 273Parametryzacja kwerend 274Edycja danych przy u yciu obiektu TableAdapter 279Integralno danych i ich usuwanie 288Wstawianie danych z wykorzystaniem obiektu TableAdapter 294
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie internetowychaplikacji bazodanowych 301Lista rekordoacutew 301Usuwanie rekordoacutew 305Edycja rekordoacutew 307Tworzenie rekordoacutew 311Formularz z podformularzem (MasterDetail Form) 315
Rozdzia 19 Transakcje 319Tworzenie i r czna kontrola transakcji 319Automatyczne zarz dzanie transakcjami 327Konkurencyjno i poziom izolacji transakcji 332
Rozdzia 20 Bezpiecze stwo w aplikacjach bazodanowych 335Szyfrowanie po czenia 335Zabezpieczenie kodu po redniego przy pomocy Code Access Security (CAS) 338ConnectionString a sposoby uwierzytelnienia w serwerze MS SQL Server 344Uwagi ko cowe dotycz ce projektowania aplikacji bazodanowych 345
Rozdzia 21 Entity Framework 347Podstawy Entity Framework 348
Pierwsze zapytanie 348Detale produktu 352Dodawanie nowego produktu 353Edycja produktu 355Usuwanie produktu 357Tworzenie schematu bazy danych na bazie modelu encji 357Entity Framework i POCO 360
Cz III ASPNET MVC a ASPNET WebForms 365
Rozdzia 22 Integracja komponentoacutew WebForms z aplikacj ASPNET MVCna przyk adzie technologii SQL Server Reporting Services 367Pierwszy raport 368
Konfiguracja roacuted a danych 368Projektowanie raportu 371
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
4 ASPNET MVC
Kontroler 63Konfiguracja walidacji danych 66
Walidacja danych po stronie klienta 67Walidacja danych a technologia ADONET Entity Framework 68Podsumowanie 71
Rozdzia 5 Wyra enia regularne a kontrola poprawno ci danych 73Podstawowe informacje o wyra eniach regularnych 73Odnajdywanie znakoacutew specjalnych 74Odnajdywanie znakoacutew i cyfr 74Odnajdywanie znakoacutew w wyznaczonych miejscach a cucha 75Okre lanie liczby wyst pie podanych znakoacutew 76Tworzenie wzorcoacutew 76
Aplikacja 76Kod pocztowy 80Imi e skie 81Walidacja adresu URL 83
Atrybuty modelu wykorzystuj ce wyra enia regularne 84Podsumowanie 88
Rozdzia 6 Asynchroniczne aplikacje internetowe mdash Microsoft AJAX 91Wprowadzenie 91Aktualizacja zawarto ci wybranego elementu witryny 92Cz ciowe od wie anie witryny a fragment widoku 97Ankieta (modu do g osowania) 102Od wie enie widoku mapy serwisu Google 108
Rozdzia 7 Technologia AJAX a biblioteka jQuery 113Wprowadzenie 113Aktualizacja zawarto ci wybranego elementu witryny 113Automatyczne uzupe nienie pola tekstowego 115Mechanizm IntelliSense a sk adnia jQuery 119Podsumowanie 120
Rozdzia 8 Trasowanie adresoacutew URL 121Wprowadzenie 121Wzorce URL 122Domy lne regu y trasowania i wzorce URL 123W asne regu y trasowania 124Zablokowanie obs ugi wybranych da 124Podsumowanie 126
Rozdzia 9 Filtry 127Wprowadzenie 127Podstawowe atrybuty filtroacutew 128
[Authorize] 128[HandleError] 129[OutputCache] 133[RequireHttps] 135[NonAction] 135
Kolejno wykonywania filtroacutew 137
Kup książkę Poleć książkę
Spis tre ci 5
Implementacja w asnych filtroacutew 139Filtry akcji 139Filtry autoryzacyjne wyniku i wyj tkoacutew 144
Podsumowanie 146
Rozdzia 10 Bezpieczne aplikacje internetowe 147Potrzeba zabezpiecze 147Uwierzytelnienie i autoryzacja 149
Mechanizmy uwierzytelnienia zintegrowane z ASPNET 149Konfiguracja uwierzytelnienia 153Autoryzacja 157Grupy u ytkownikoacutew 158
Podsumowanie 160
Rozdzia 11 Konfiguracja zabezpiecze i panel Web Site Administration Tool 161Wprowadzenie 161U ytkownicy grupy i regu y dost pu 163Ustawienia aplikacji oraz odczyt zawarto ci pliku konfiguracyjnego 167Wy czenie aplikacji i konfiguracja serwera SMTP 171Komunikaty o b dach 171Zarz dzanie dostawcami us ug 178Podsumowanie 179
Rozdzia 12 Zabezpieczenie witryny przed z o liwym kodem 181Wprowadzenie 181Dzia anie z o liwego kodu 181Zabezpieczanie pliku konfiguracyjnego 187Podsumowanie 192
Rozdzia 13 Kontroler uwierzytelnienia w aplikacji ASPNET MVC 195Wprowadzenie 195Model 195Klasa kontrolera 198Widoki kontrolera 203Podsumowanie 209
Rozdzia 14 Dynamiczne zarz dzanie u ytkownikami i grupami 211Wprowadzenie 211Kontroler panelu administracyjnego 212Podzia u ytkownikoacutew na grupy 219Podsumowanie 224
Rozdzia 15 Biblioteka Knockout 227Knockout czyli interfejs u ytkownika z wykorzystaniem wzorca MVVM 227Knockout mdash wykorzystanie szablonoacutew JavaScript 230
Cz II Technologie bazodanowew aplikacjach internetowych 235
Rozdzia 16 Podstawy ADONET 237Podstawy relacyjnych baz danych 237Technologia ADONET 238
Kup książkę Poleć książkę
6 ASPNET MVC
Instalacja bazy Northwind 240Po czenie ze roacuted em danych 241Modyfikacja danych w obiekcie DataSet 249
Tworzenie nowych rekordoacutew 250Edycja rekordoacutew 257Wersjonowanie obiektu DataRow i kontrola wprowadzanych danych 263Usuwanie rekordoacutew 270
Rozdzia 17 Obiekt TableAdapter jako pomost mi dzy DataSeta roacuted em danych 273Parametryzacja kwerend 274Edycja danych przy u yciu obiektu TableAdapter 279Integralno danych i ich usuwanie 288Wstawianie danych z wykorzystaniem obiektu TableAdapter 294
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie internetowychaplikacji bazodanowych 301Lista rekordoacutew 301Usuwanie rekordoacutew 305Edycja rekordoacutew 307Tworzenie rekordoacutew 311Formularz z podformularzem (MasterDetail Form) 315
Rozdzia 19 Transakcje 319Tworzenie i r czna kontrola transakcji 319Automatyczne zarz dzanie transakcjami 327Konkurencyjno i poziom izolacji transakcji 332
Rozdzia 20 Bezpiecze stwo w aplikacjach bazodanowych 335Szyfrowanie po czenia 335Zabezpieczenie kodu po redniego przy pomocy Code Access Security (CAS) 338ConnectionString a sposoby uwierzytelnienia w serwerze MS SQL Server 344Uwagi ko cowe dotycz ce projektowania aplikacji bazodanowych 345
Rozdzia 21 Entity Framework 347Podstawy Entity Framework 348
Pierwsze zapytanie 348Detale produktu 352Dodawanie nowego produktu 353Edycja produktu 355Usuwanie produktu 357Tworzenie schematu bazy danych na bazie modelu encji 357Entity Framework i POCO 360
Cz III ASPNET MVC a ASPNET WebForms 365
Rozdzia 22 Integracja komponentoacutew WebForms z aplikacj ASPNET MVCna przyk adzie technologii SQL Server Reporting Services 367Pierwszy raport 368
Konfiguracja roacuted a danych 368Projektowanie raportu 371
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Spis tre ci 5
Implementacja w asnych filtroacutew 139Filtry akcji 139Filtry autoryzacyjne wyniku i wyj tkoacutew 144
Podsumowanie 146
Rozdzia 10 Bezpieczne aplikacje internetowe 147Potrzeba zabezpiecze 147Uwierzytelnienie i autoryzacja 149
Mechanizmy uwierzytelnienia zintegrowane z ASPNET 149Konfiguracja uwierzytelnienia 153Autoryzacja 157Grupy u ytkownikoacutew 158
Podsumowanie 160
Rozdzia 11 Konfiguracja zabezpiecze i panel Web Site Administration Tool 161Wprowadzenie 161U ytkownicy grupy i regu y dost pu 163Ustawienia aplikacji oraz odczyt zawarto ci pliku konfiguracyjnego 167Wy czenie aplikacji i konfiguracja serwera SMTP 171Komunikaty o b dach 171Zarz dzanie dostawcami us ug 178Podsumowanie 179
Rozdzia 12 Zabezpieczenie witryny przed z o liwym kodem 181Wprowadzenie 181Dzia anie z o liwego kodu 181Zabezpieczanie pliku konfiguracyjnego 187Podsumowanie 192
Rozdzia 13 Kontroler uwierzytelnienia w aplikacji ASPNET MVC 195Wprowadzenie 195Model 195Klasa kontrolera 198Widoki kontrolera 203Podsumowanie 209
Rozdzia 14 Dynamiczne zarz dzanie u ytkownikami i grupami 211Wprowadzenie 211Kontroler panelu administracyjnego 212Podzia u ytkownikoacutew na grupy 219Podsumowanie 224
Rozdzia 15 Biblioteka Knockout 227Knockout czyli interfejs u ytkownika z wykorzystaniem wzorca MVVM 227Knockout mdash wykorzystanie szablonoacutew JavaScript 230
Cz II Technologie bazodanowew aplikacjach internetowych 235
Rozdzia 16 Podstawy ADONET 237Podstawy relacyjnych baz danych 237Technologia ADONET 238
Kup książkę Poleć książkę
6 ASPNET MVC
Instalacja bazy Northwind 240Po czenie ze roacuted em danych 241Modyfikacja danych w obiekcie DataSet 249
Tworzenie nowych rekordoacutew 250Edycja rekordoacutew 257Wersjonowanie obiektu DataRow i kontrola wprowadzanych danych 263Usuwanie rekordoacutew 270
Rozdzia 17 Obiekt TableAdapter jako pomost mi dzy DataSeta roacuted em danych 273Parametryzacja kwerend 274Edycja danych przy u yciu obiektu TableAdapter 279Integralno danych i ich usuwanie 288Wstawianie danych z wykorzystaniem obiektu TableAdapter 294
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie internetowychaplikacji bazodanowych 301Lista rekordoacutew 301Usuwanie rekordoacutew 305Edycja rekordoacutew 307Tworzenie rekordoacutew 311Formularz z podformularzem (MasterDetail Form) 315
Rozdzia 19 Transakcje 319Tworzenie i r czna kontrola transakcji 319Automatyczne zarz dzanie transakcjami 327Konkurencyjno i poziom izolacji transakcji 332
Rozdzia 20 Bezpiecze stwo w aplikacjach bazodanowych 335Szyfrowanie po czenia 335Zabezpieczenie kodu po redniego przy pomocy Code Access Security (CAS) 338ConnectionString a sposoby uwierzytelnienia w serwerze MS SQL Server 344Uwagi ko cowe dotycz ce projektowania aplikacji bazodanowych 345
Rozdzia 21 Entity Framework 347Podstawy Entity Framework 348
Pierwsze zapytanie 348Detale produktu 352Dodawanie nowego produktu 353Edycja produktu 355Usuwanie produktu 357Tworzenie schematu bazy danych na bazie modelu encji 357Entity Framework i POCO 360
Cz III ASPNET MVC a ASPNET WebForms 365
Rozdzia 22 Integracja komponentoacutew WebForms z aplikacj ASPNET MVCna przyk adzie technologii SQL Server Reporting Services 367Pierwszy raport 368
Konfiguracja roacuted a danych 368Projektowanie raportu 371
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
6 ASPNET MVC
Instalacja bazy Northwind 240Po czenie ze roacuted em danych 241Modyfikacja danych w obiekcie DataSet 249
Tworzenie nowych rekordoacutew 250Edycja rekordoacutew 257Wersjonowanie obiektu DataRow i kontrola wprowadzanych danych 263Usuwanie rekordoacutew 270
Rozdzia 17 Obiekt TableAdapter jako pomost mi dzy DataSeta roacuted em danych 273Parametryzacja kwerend 274Edycja danych przy u yciu obiektu TableAdapter 279Integralno danych i ich usuwanie 288Wstawianie danych z wykorzystaniem obiektu TableAdapter 294
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie internetowychaplikacji bazodanowych 301Lista rekordoacutew 301Usuwanie rekordoacutew 305Edycja rekordoacutew 307Tworzenie rekordoacutew 311Formularz z podformularzem (MasterDetail Form) 315
Rozdzia 19 Transakcje 319Tworzenie i r czna kontrola transakcji 319Automatyczne zarz dzanie transakcjami 327Konkurencyjno i poziom izolacji transakcji 332
Rozdzia 20 Bezpiecze stwo w aplikacjach bazodanowych 335Szyfrowanie po czenia 335Zabezpieczenie kodu po redniego przy pomocy Code Access Security (CAS) 338ConnectionString a sposoby uwierzytelnienia w serwerze MS SQL Server 344Uwagi ko cowe dotycz ce projektowania aplikacji bazodanowych 345
Rozdzia 21 Entity Framework 347Podstawy Entity Framework 348
Pierwsze zapytanie 348Detale produktu 352Dodawanie nowego produktu 353Edycja produktu 355Usuwanie produktu 357Tworzenie schematu bazy danych na bazie modelu encji 357Entity Framework i POCO 360
Cz III ASPNET MVC a ASPNET WebForms 365
Rozdzia 22 Integracja komponentoacutew WebForms z aplikacj ASPNET MVCna przyk adzie technologii SQL Server Reporting Services 367Pierwszy raport 368
Konfiguracja roacuted a danych 368Projektowanie raportu 371
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Spis tre ci 7
Kolumny obliczeniowe raportu 378Stosowanie formatu prezentacji danych 379Grupowanie danych 381
Projektowanie graficznego uk adu raportu 383Etykiety rysunki i listy 384Prezentacja danych w postaci macierzowej 390
Parametry raportu i filtrowanie danych 394Filtr definiowany na poziomie raportu 395Filtrowanie raportu na etapie pobierania danych roacuted owych 401
Kluczowe wska niki efektywno ci 403Wykresy 406
Rozdzia 23 Eksport danych 413
Rozdzia 24 Ksi ga go ci w MVC Poroacutewnanie ASPNET Web Formsi ASPNET MVC 423Tworzenie projektu 423Widok mdash formularz dodawania wpisu 425Model mdash obs uga plikoacutew XML 427Aplikacja mdash rejestrowanie zdarze i trasowanie 430Kontroler mdash obs uga POST 431Widok mdash wy wietlanie wpisoacutew 432Widok mdash walidacja 435Kontroler mdash u ycie modelu odsy anego przez widok 440
Dodatki 447
Dodatek A ASPNET MVC 4 449Wsparcie dla urz dze mobilnych 449
Sformu owanie problemu 450Przystosowanie widokoacutew aplikacji do urz dze mobilnych 457
OAuth czyli otwarta autoryzacja 460Implementacja zdalnej autoryzacji w powi zaniu z portalem Facebook 461
Przetwarzanie asynchroniczne 464Wprowadzenie 464Potrzeba wykorzystania asynchronicznych kontroleroacutew 466Kontrolery asynchroniczne i klasa Thread 469Kontrolery asynchroniczne a zadania 472
Grupowanie i optymalizacja skryptoacutew oraz kaskadowych arkuszy styloacutew 475Web API 477
Wprowadzenie 477Implementacja serwisu sieciowego 479Implementacja klienta Web API 483
Podsumowanie 494
Dodatek B Publikacja aplikacji ASPNET za pomoc internetowychus ug informacyjnych (IIS) 495Wprowadzenie 495Instalacja i konfiguracja serwera internetowych us ug informacyjnych IIS 496
Instalacja serwera IIS w systemie Windows 7 496Instalacja serwera IIS w systemie Windows 8 496
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
8 ASPNET MVC
Publikowanie aplikacji na serwerze IIS 497Konfiguracja puli aplikacji 498Instalacja ASPNET 445 na serwerze IIS 498Publikacja aplikacji 500Uruchomienie aplikacji 503
IIS jako serwer do rozwoju aplikacji 504
Dodatek C ASPNET Identity w MVC 5 i Visual Studio 2013 505Wst p 505Szablony projektoacutew ASPNET w Visual Studio 2013 505Kontroler zarz dzaj cy u ytkownikami i rolami 508
Dynamiczne zarz dzanie u ytkownikami 509Statyczne zarz dzanie rolami 519Dynamiczne zarz dzanie rolami 519
Przyk adowe wykorzystanie roacutel 524Podsumowanie 526
Skorowidz 527
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18
Scaffolding czyliekspresowe tworzenieinternetowych aplikacjibazodanowych
Dawid Borycki
W dwoacutech poprzednich rozdzia ach samodzielnie utworzyli my komponenty prezentuj -ce dane rekordoacutew z bazy danych a tak e umo liwiaj ce ich edycj i usuwanie Wyko-rzystali my do tego celu bibliotek jQuery UI W tym rozdziale chcia bym zaprezen-towa tak zwany scaffolding Jest to procedura dost pna mi dzy innymi w aplikacjachASPNET MVC umo liwiaj ca automatyczne wygenerowanie widokoacutew (komponen-toacutew) aplikacji internetowej ktoacutere realizuj bazodanowy schemat CRUD (ang CreateRead Update Delete) Schemat CRUD obejmuje podstawowe elementy wszystkichaplikacji bazodanowych czyli tworzenie odczytywanie aktualizowanie i usuwanierekordoacutew z tabel danych
Lista rekordoacutewOpis techniki scaffolding w aplikacjach ASPNET MVC rozpoczn od wygenerowa-nia widoku listy rekordoacutew w aplikacji NorthwindMVC Automatycznie wygenerowa-ny widok skoryguj w celu dostosowania go do potrzeb aplikacji
1 G oacutewny widok aplikacji NorthwindMVC (plik Indexcshtml) uzupe nijo nast puj ce polecenie
ltpgt HtmlActionLink(Scaffolding ScaffoldingList)ltpgt
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
302 Cz II Technologie bazodanowe w aplikacjach internetowych
2 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
3 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
4 W kreatorze Add View (rysunek 181)
Rysunek 181Widok kreatoraAdd View
a) Zmie nazw widoku na ScaffoldingList
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz List
e) Kliknij przycisk Add
5 Utworzony w ten sposoacuteb plik ScaffoldingListcshtml zmodyfikuj wed ugwzoru z listingu 181
Listing 181 Zmodyfikowany widok listy klientoacutew
model IEnumerableltNorthwindMVCModelsNorthwindDataSetCustomersRowgt
ViewBagTitle = ScaffoldingList
lth2gtScaffoldingListlth2gtlth2gtLista klientoacutewlth2gt
ltpgt HtmlActionLink(Create New Create) HtmlActionLink(Nowy rekord ScaffoldingCreate)ltpgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 303
lttablegt lttrgt ltthgt CustomerID ltthgt ltthgt CompanyName ltthgt ltthgt ContactName ltthgt ltthgt ContactTitle ltthgt ltthgt Address ltthgt ltthgt City ltthgt ltthgt Region ltthgt ltthgt PostalCode ltthgt ltthgt Country ltthgt ltthgt Phone ltthgt ltthgt Fax ltthgt ltthgt RowError ltthgt ltthgt HasErrors ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
304 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRegion) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPostalCode) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCountry) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemPhone) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemFax) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemRowError) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemHasErrors) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | HtmlActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgt
lttablegt
6 W pliku HomeControllercs
a) Utwoacuterz pole klasyCustomersTableAdapter customersTableAdapter = new CustomersTableAdapter()
b) Dodaj polecenia z listingu 182
Listing 182 Prezentacja listy klientoacutew
private void PobierzDaneKlientow() northwindDataSetEnforceConstraints = false customersTableAdapterFill(northwindDataSetCustomers)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 305
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingList() PobierzDaneKlientow() return View(ScaffoldingList northwindDataSetCustomers)
7 Skompiluj i uruchom aplikacj
Po uruchomieniu aplikacji i klikni ciu hiper cza z etykiet Scaffolding zostanie wy-wietlona lista klientoacutew ktoacuterej posta powinna by analogiczna do przedstawionej na
rysunku 182 W kolejnym kroku zaimplementujemy mo liwo usuwania edycji oraztworzenia rekordoacutew w tabeli Customers
Rysunek 182 Lista klientoacutew
Usuwanie rekordoacutewW celu zaimplementowania mo liwo ci usuwania rekordoacutew z tabeli Customers wyko-naj nast puj ce czynno ci
1 W widoku projektowania obiektu NorthwindDataSet skonfiguruj relacjpomi dzy tabelami Orders i Customers wed ug wzoru z rysunku 183
2 Klas kontrolera Home uzupe nij o polecenia z listingu 183
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
306 Cz II Technologie bazodanowe w aplikacjach internetowych
Rysunek 183Konfiguracja wi zoacutewintegralno ci danych
Listing 183 Usuwanie rekordoacutew z tabeli Customers
private void AktualizujDaneKlientow() northwindDataSetEnforceConstraints = false
orderDetailsTableAdapterUpdate(northwindDataSetOrder_Details) ordersTableAdapterUpdate(northwindDataSetOrders) customersTableAdapterUpdate(northwindDataSetCustomers)
northwindDataSetEnforceConstraints = true
public ActionResult ScaffoldingDelete(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) Usuwanie rekordoacutew potomnych DataRow[] zamowienia = cdrGetChildRows(northwindDataSetRelations[FK_Orders_Customers])
foreach (DataRow dr in zamowienia) drDelete()
Usuwanie rekordu klienta cdrDelete()
Aktualizacja wszystkich powi zanych tabel AktualizujDaneKlientow()
return ScaffoldingList()
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 307
Podczas usuwania danego rekordu nale y zadba o rekordy z innych tabel ktoacutere sz nim zwi zane relacjami Wiersze tabeli Customers s skojarzone z rekordami z tabelOrders oraz OrdersDetails Z tego powodu aktualizuj zawarto ci tych tabel po usu-ni ciu wybranego rekordu klienta Osierocone rekordy z tabeli Orders s usuwane ra-zem z nim
Edycja rekordoacutewDo edycji rekordoacutew w tabeli Customers potrzebny b dzie odpowiedni widok ktoacuteryprzygotuj na bazie automatycznie wygenerowanego kodu roacuted owego
1 Zgodnie z przepisem z podrozdzia u bdquoLista rekordoacutewrdquo utwoacuterz widokkontrolera Home i skonfiguruj go wed ug wzoru z rysunku 184
Rysunek 184Konfiguracja widokuedycji klienta
2 Wygenerowany automatycznie plik widoku ScaffoldingEditcshtmlzmodyfikuj zgodnie z listingiem 184
Listing 184 Definicja widoku edycji klienta
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingEdit
lth2gtScaffoldingEditlth2gtlth2gtEdycja rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
308 Cz II Technologie bazodanowe w aplikacjach internetowych
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(EdytujDaneKlienta Home new id = ModelCustomerID)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 309
HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=SaveZapisz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy rekordow ScaffoldingList)ltdivgt
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
310 Cz II Technologie bazodanowe w aplikacjach internetowych
3 W kontrolerze Home zdefiniuj metody z listingu 185
Listing 185 Edycja danych klienta
public ActionResult ScaffoldingEdit(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id)
if (cdr = null) return View(ScaffoldingEdit cdr) else return ScaffoldingList()
private void PrzepiszDaneKlienta(FormCollection daneKlienta refNorthwindDataSetCustomersRow rekordKlienta)
rekordKlientaCompanyName = daneKlienta[CompanyName]ToString() rekordKlientaContactName = daneKlienta[ContactName]ToString() rekordKlientaContactTitle = daneKlienta[ContactTitle]ToString() rekordKlientaAddress = daneKlienta[Address]ToString() rekordKlientaCity = daneKlienta[City]ToString()
public ActionResult EdytujDaneKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) if (cdr = null) PrzepiszDaneKlienta(daneKlienta ref cdr) AktualizujDaneKlientow() return ScaffoldingList()
Proces edycji rekordu w bazie danych za pomoc technologii ADONET opiera si nainformacjach zebranych w poprzednich rozdzia ach wi c nie b d go tu szczegoacute owoopisywa Celem tego przyk adu by o automatyczne wygenerowanie widoku umo li-wiaj cego edycj danych klienta przystosowanie go do w asnych potrzeb oraz inte-gracja z kontrolerem
Separacja modelu widoku i kontrolera umo liwia narz dziom Visual Studio 2012 auto-matyczne generowanie widoku na podstawie definicji modelu Jednak e jak pokaza-em w tym podrozdziale kreator tworzy widok ktoacutery umo liwia edycj wszystkich poacutel
rekordu (nawet identyfikatora) co sprawia e w wi kszo ci przypadkoacutew nale y sa-modzielnie edytowa plik widoku w celu przystosowania go do potrzeb projektowanejaplikacji Jednak jak pokazuje powy szy przyk ad nie jest to rzecz skomplikowan
Integracja widoku z kontrolerem polega na odpowiednim przekazywaniu informacjio edytowanym rekordzie oraz warto ci jego poacutel Do tego celu wykorzysta em identy-fikator klienta ktoacutery jednoznacznie identyfikuje rekordy w tabeli Customers
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 311
Przyk adowy wynik polece zaimplementowanych w tym podrozdziale przedstawiarysunek 185
Rysunek 185Edycja danych klienta
Tworzenie rekordoacutewW poprzednich podrozdzia ach zaimplementowa em trzy spo roacuted czterech podstawo-wych elementoacutew schematu CRUD czyli odczytywanie (R) aktualizacj (U) oraz usu-wanie (D) rekordoacutew Ostatnim elementem jest tworzenie (C) nowych rekordoacutew W celuzaimplementowania procedury uzupe niania tabeli Customers nowymi rekordami na-le y post pi nast puj co
1 W Solution Explorer rozwi w ze Views a nast pnie kliknij prawymprzyciskiem myszy folder Home
2 Wybierz opcj Add a nast pnie Viewhellip z menu kontekstowego
3 W kreatorze Add View
a) Zmie nazw widoku na ScaffoldingCreate
b) Zaznacz pole wyboru Create a strongly-typed view
c) Z listy dost pnych modeli wybierz pozycj CustomersRow
d) Z listy rozwijanej Scaffold template wybierz Create
e) Kliknij przycisk Add
4 Utworzony w ten sposoacuteb plik ScaffoldingCreatecshtml zmodyfikuj wed ugwzoru z listingu 186
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
312 Cz II Technologie bazodanowe w aplikacjach internetowych
Listing 186 Widok umo liwiaj cy wstawianie rekordoacutew do tabeli Customers
model NorthwindMVCModelsNorthwindDataSetCustomersRow
ViewBagTitle = ScaffoldingCreate
lth2gtScaffoldingCreatelth2gtlth2gtTworzenie rekordulth2gt
ltscript src=UrlContent(~Scriptsjqueryvalidateminjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~Scriptsjqueryvalidateunobtrusiveminjs)type=textjavascriptgtltscriptgt
using (HtmlBeginForm(DodajKlienta Home)) HtmlValidationSummary(true) ltfieldsetgt ltlegendgtDane klientaCustomersRowltlegendgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCustomerID) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCustomerID) HtmlValidationMessageFor(model =gt modelCustomerID) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCompanyName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCompanyName) HtmlValidationMessageFor(model =gt modelCompanyName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactName) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactName) HtmlValidationMessageFor(model =gt modelContactName) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelContactTitle) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelContactTitle) HtmlValidationMessageFor(model =gt modelContactTitle) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelAddress) ltdivgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 313
ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelAddress) HtmlValidationMessageFor(model =gt modelAddress) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCity) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCity) HtmlValidationMessageFor(model =gt modelCity) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRegion) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelRegion) HtmlValidationMessageFor(model =gt modelRegion) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPostalCode) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPostalCode) HtmlValidationMessageFor(model =gt modelPostalCode) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelCountry) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelCountry) HtmlValidationMessageFor(model =gt modelCountry) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelPhone) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelPhone) HtmlValidationMessageFor(model =gt modelPhone) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelFax) ltdivgt ltdiv class=editor-fieldgt HtmlEditorFor(model =gt modelFax) HtmlValidationMessageFor(model =gt modelFax) ltdivgt
ltdiv class=editor-labelgt HtmlLabelFor(model =gt modelRowError) ltdivgt ltdiv class=editor-fieldgt
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
314 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlEditorFor(model =gt modelRowError) HtmlValidationMessageFor(model =gt modelRowError) ltdivgt
ltpgt ltinput type=submit value=CreateUtwoacuterz gt ltpgt ltfieldsetgt
ltdivgt HtmlActionLink(Back to List Index) HtmlActionLink(Powroacutet do listy ScaffoldingList)ltdivgt
5 Definicj kontrolera Home uzupe nij o polecenia z listingu 187
Listing 187 Wstawianie rekordoacutew do tabeli Customers
private char PobierzZnak(string lancuch int index) Random random = new Random() char znak
if (lancuchLength gt index) znak = lancuch[index] else znak = (char)randomNext(0 255)ToString()[0]
return znak
private void UtworzIdentyfikatorKlienta(ref NorthwindDataSetCustomersRowdaneKlienta)
string identyfikator = int indexZnaku = 0
identyfikator += PobierzZnak(daneKlientaCompanyName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactName indexZnaku) identyfikator += PobierzZnak(daneKlientaContactTitle indexZnaku) identyfikator += PobierzZnak(daneKlientaAddress indexZnaku) identyfikator += PobierzZnak(daneKlientaCity indexZnaku)
daneKlientaCustomerID = identyfikator
public ActionResult DodajKlienta(FormCollection daneKlienta string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersNewCustomersRow()
PrzepiszDaneKlienta(daneKlienta ref cdr)
UtworzIdentyfikatorKlienta(ref cdr)
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 315
customersTableAdapterInsert(cdrCustomerID cdrCompanyName cdrContactName cdrContactTitle cdrAddress cdrCity )
AktualizujDaneKlientow()
return ScaffoldingList()
Wstawienie rekordoacutew do tabeli Customers jest analogiczne do ich edycji Jedyn roacute -nic jest konieczno utworzenia identyfikatora klienta gdy nie jest on tworzonyautomatycznie jak to by o w przypadku tabeli Employees Identyfikatory rekordoacuteww tabeli Customers s pi cioelementowymi ci gami znakoacutew Tworz je na podstawiepierwszych liter poacutel CompanyName ContactName ContactTitle Address oraz City Je liw tych polach znajduj si puste ci gi to odpowiedni liter zast puj losowo wyge-nerowanym znakiem
W kolejnym podrozdziale poka w jaki sposoacuteb wy wietli informacje o rekordachpotomnych opieraj c si na relacji pomi dzy tabelami
Formularz z podformularzem(MasterDetail Form)
Jako podsumowanie tego rozdzia u utworz formularz z podformularzem tak zwanyformularz MasterDetail Jego dzia anie polega na tym e wy wietlanie danych od-bywa si na bazie co najmniej dwoacutech komponentoacutew (np blokoacutew czy tabel) oraz rela-cji mi dzy tabelami Pierwszy komponent prezentuje rekordy zawarte w tabeli g oacutew-nej (ang master) a drugi zawiera dane z tabeli podrz dnej (ang detail) Komponentzwi zany z tabel podrz dn ma zazwyczaj za zadanie prezentowa szczegoacute owe da-ne odpowiadaj ce rekordowi z tabeli nadrz dnej ktoacutery zosta wskazany przy pomocyzwi zanej z nim listy rekordoacutew Pola tych tabel musz by zatem uporz dkowane w takisposoacuteb aby pokazywa y informacj o tym samym rekordzie Uzyskuje si to przy po-mocy relacji mi dzy tabelami ktoacuterej zadaniem jest powi zanie informacji zawartychw bazie danych
W tym podrozdziale tabel nadrz dn b dzie tabela Customers a podrz dn OrdersPo klikni ciu na hiper cze z etykiet zamoacutewienia wy wietli si lista rekordoacutew tabeliOrders skojarzonych z danym klientem dania prezentacji zamoacutewie b d realizo-wane asynchronicznie
1 Plik widoku ScaffoldingListcshtml zmodyfikuj wed ug wzoru z listingu 188
Listing 188 Konfiguracja hiper cza umo liwiaj cego wy wietlenie listy zamoacutewie danego klienta
hellipforeach (var item in Model) lttrgt lttdgt
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
316 Cz II Technologie bazodanowe w aplikacjach internetowych
HtmlDisplayFor(modelItem =gt itemCustomerID) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCompanyName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactName) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemContactTitle) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemAddress) lttdgt lttdgt HtmlDisplayFor(modelItem =gt itemCity) lttdgt lttdgt HtmlActionLink(Edytuj ScaffoldingEdit new id = itemCustomerID ) | AjaxActionLink(Zamoacutewienia ScaffoldingMasterDetail new id = itemCustomerID new AjaxOptions UpdateTargetId = zamowienia OnSuccess = documentgetElementById(zamowienia)scrollIntoView() ) | HtmlActionLink(Usu ScaffoldingDelete new id = itemCustomerID ) lttdgt lttrgtlttablegt
ltdiv id=zamowieniagtltdivgt
2 Utwoacuterz widok cz ciowy o nazwie ZamowieniaPartialViewcshtml i wstaww nim polecenia z listingu 189
Listing 189 Definicja widoku prezentuj cego list zamoacutewie
model IEnumerableltNorthwindMVCModelsNorthwindDataSetOrdersRowgt
if (Model == null) lth2gtBrak zamoacutewie lth2gtelse lth2gtLista zamoacutewie lth2gt
lttablegt lttrgt ltthgt OrderDate ltthgt ltthgt RequiredDate ltthgt
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Rozdzia 18 Scaffolding czyli ekspresowe tworzenie aplikacji bazodanowych 317
ltthgt ShippedDate ltthgt ltthgt ShipName ltthgt ltthgt ShipAddress ltthgt ltthgt ShipCity ltthgt ltthgtltthgt lttrgt
foreach (var item in Model) lttrgt lttdgt itemOrderDateToShortDateString() lttdgt lttdgt itemRequiredDateToShortDateString() lttdgt lttdgt itemShippedDateToShortDateString() lttdgt lttdgt itemShipName lttdgt lttdgt itemShipAddress lttdgt lttdgt itemShipCity lttdgt lttrgt lttablegt
3 Kontroler Home uzupe nij o metod ScaffoldingMasterDetail ktoacuterej definicjprzedstawi em na listingu 1810
Listing 1810 Pobranie i prezentacja rekordoacutew potomnych wybranego klienta
public ActionResult ScaffoldingMasterDetail(string id) NorthwindDataSetCustomersRow cdr = northwindDataSetCustomersFindByCustomerID(id) NorthwindDataSetOrdersRow[] zamowieniaPracownika = null
if (cdr = null) zamowieniaPracownika = (NorthwindDataSetOrdersRow[])cdrGetChildRows(FK_Orders_Customers)
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
318 Cz II Technologie bazodanowe w aplikacjach internetowych
if (RequestIsAjaxRequest()) return View(ZamowieniaPartialView zamowieniaPracownika) else return ScaffoldingList()
4 Sekcj ltheadgt pliku _Layoutcshtml uzupe nij o polecenia z listingu 1811
Listing 1811 Import skryptoacutew obs uguj cych dania asynchroniczne
ltscript src=UrlContent(~Scriptsjqueryunobtrusive-ajaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftAjaxjs)type=textjavascriptgtltscriptgt
ltscript src=UrlContent(~ScriptsMicrosoftMvcAjaxjs)type=textjavascriptgtltscriptgt
5 Po skompilowaniu i uruchomieniu aplikacji powiniene uzyska efektanalogiczny do przedstawionego na rysunku 186
Rysunek 186 Przyk ad formularza typu MasterDetail
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz
AACL 149action methods 25ActiveX Data Object 238ADO 238ADONET 238
obiekty 238podstawy 237synchronizacja buforu ze roacuted em danych 273
adresy URLautoryzacja 157parametry 122trasowanie 121wzorce 122 123
agile programming 15AJAX 91
aktualizacja bloku witryny 113dodanie referencji do bibliotek JavaScript 94
akcjaCreate 354Delete 357Details 353dodaj ca nowy produkt 355Edit 356
aktualizacjazawarto ci elementu witryny 92
algorytmRSA 187
ambient transaction 329ankieta 102AntiXss 187aplikacje
bazodanowe 235bezpiecze stwo 335mechanizm transakcji 319scaffolding 301
synchronizacja ze roacuted em danych 273uwagi do projektowania 345
mo liwo edytowania wpisoacutew 441rejestrowanie zdarze i trasowanie 430
Application Domain 339architektura obiektowa 347ASPNET
konfiguracja aplikacji 161mechanizmy uwierzytelnienia 149metody globalne 107w czanie i wy czanie aplikacji 171
ASPNET AJAX 91ASPNET MVC 15
komponenty 16ASPX 21 30asynchroniczne przetwarzanie da http
jQuery 113Asynchronous JavaScript and XML 48Asynchronous Programming Model 464ataki
rodzaje 147SQL Injection 148 344wy udzenie informacji 148z o liwy kod 181
atrybut 347AcceptVerbs(HttpPost) 47AcceptVerbs(HttpVerbsPost) 65AssociationAttribute 58Authorize 200AuthorizeAttribute 128autoryzacyjny 145ConcurrencyCheckAttribute 58Confirm 95cookieless 154CustomValidationAttribute 58 66data-bind 230DataType 54 57
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
528 ASPNET MVC
atrybutDataTypeAttribute 58defaultRedirect 173defaultUrl 154DisplayAttribute 58DisplayColumnAttribute 58DisplayName 436EditableAttribute 58enableCrossAppRedirects 155EnumDataTypeAttribute 58FilterUIHintAttribute 58HandleError 138 175HandleErrorAttribute 129HttpMethod 95InsertionMode 95KeyAttribute 58klasy do konfiguracji metadanych 57 58LoadingElementDuration 110LoadingElementId 95 110Log
klasa implementuj ca 142loginUrl 154MetadataType 69MetadataTypeAttribute 58mode 153 173modelu 55name 155NonAction 26 135OnBegin 95OnComplete 95OnFailure 95OnSuccess 95 110OutputCache 133OutputCacheAttribute
parametry 134passwordFormat 156protection 155Range 54 66RangeAttribute 58redirectMode 173RegularExpressionAttribute 58Required 54 66RequiredAttribute 58RequireHttps 135requireSSL 155slidingExpiration 155StringLength 66StringLengthAttribute 58TestClass 29TestMethod 29ticketCompatibilityMode 155timeout 155TimestampAttribute 58UpdateTargetId 95
Url 95ValidateInput 185
atrybuty modeluwyra enia regularne 84
Attribute 347authentication ticket 151auto post back 217autocomplete textbox 115automatyczne uzupe nienie pola tekstowego 115autoryzacja 149 157
adresoacutew URL 157konfiguracja 157
grupy u ytkownikoacutew 158mechanizm filtrowania 158otwarta 460plikoacutew 157zdalna
powi zanie z portalem Facebook 461Azure 496
Bbazy danych 40 237
aktualizacja 41lista rekordoacutew 301Northwind 240
detale produktu 352dodawanie po cze 350pobieranie produktoacutew 351
po czenie ze roacuted em danych 241relacyjne 237schemat CRUD 301transakcje 319tworzenie 321
nowego rekordu 48schematu na bazie modelu encji 357
usuwanie danych 290regu y integralno ci 293
usuwanie powi zanych wierszyrekordy potomne 291
warstwa dost pu 42bezpiecze stwo
aplikacji internetowych 147ataki 147mechanizmy 149
biblioteka NETprogramowanie asynchroniczne 464
biblioteka skryptoacutewMapajs 32
bilet uwierzytelniaj cy 151b dy
dzia ania aplikacji 171strona b du 176tworzenie u ytkownika 202wprowadzenie z ego rekordu 268
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 529
body 383buforowanie
danych ze roacutede zewn trznych 133bundling 475Business Intelligence 368
Ccallback 35CAS 151 338CDN 113Central Authentication Service 151centralna us uga uwierzytelnienia 151certyfikat 337CLR
procesy systemowe 466Code Access Security 338Confirm 96connString 341controllers 16Coordinated Universal Time 155Create Read Update Delete 301cross-site scripting 181CRUD 54 301Crystal Reports 368
Ddane
agregacja 378bezpo redni dost p do roacuted a 346eksport 413
do dokumentu tekstowego 419do PDF 420skoroszyt MS Excel 421tabele dynamiczne 418
integralno 288 319pomini cie sprawdzania 292regu y 291
modyfikacja 249platforma modelowania 347prezentacja
graficzna 406w postaci macierzowej 390
przekazywaniez formularza do roacuted a 46z kontrolera do widoku 437 439
serializacja i transfer struktur 117szyfrowanie 337typu
ActionResult 25walidacja 53weryfikacja 53wi zy integralno ci 306
wy wietlanie 315zabezpieczenie 338
Data Binding 389Data Definition Language 345Database Management System 237DBMS 237
wi zy integralno ci 238DDL 345denial of service 147detail 315Development Server 504DIE 53DisplayFormatAttribute 58document object model 92DOM 92domena aplikacji 339 466
instancja obiektoacutew 341tworzenie 339wspoacute dzielenie obiektu 341
dostawcy us ug 178dost p anonimowy 150DotNetOpenAuth 149DPAPI 187DRY 53dyrektywa
model 46
Eelement
customErrors 173success 115
elevation of privilege 147encapsulation 107encja 347
atrybuty 54bazodanowa 54KategoriaProduktu 358odwzorowanie w bazie danych 360Order_Details 362Orders 361Products 361Produkt 358
Entity 347Entity Framework 43 347
POCO 360potwierdzenie explicite 356technologie 349wersje 347
Entity Relationship Model 347Entity SQL 349ERM 347Event-based Asynchronous Pattern 465event-driven programming 17
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
530 ASPNET MVC
FFile Transfer Protocol 495filtry 127
akcji 127 139autoryzacyjne 127 144dynamiczne 395kolejno wykonywania 137
priorytety 138Log
metody 141LogAttribute
definicja klasy 140podstawowe atrybuty 128statyczne 395w asne 139wyj tkoacutew 128 144
niestandardowe 145wyniku 128 144
for 434foreach 51Forms Authentication Provider 149formularz
MasterDetail 315z podformularzem 315
funkcjadelay 217ListaPracownikoacutew 57Mid 390RolesIsUserInRole 217Today 390wyznaczaj ca tras 109zmienPrzynaleznoscDoGrupy 217 218
GGauge 383 403GDI 368graficzny interfejs u ytkownika 17 30Graphics Device Interface 368GridView 48grupy u ytkownikoacutew
autoryzacja 158GUI 17
Hhard-coding 167haszowanie 150helper methods 25html helper 455
Iidentyfikator
klienta 315rekordoacutew 315
IIS 121 149 495instalacja
ASPNET 445 498serwera w Windows 7 496serwera w Windows 8 496
mened er Windows 499uruchamianie aplikacji 503
serwer do rozwoju aplikacji 504information disclosure 147instancje aplikacji 465instancjonowanie modelu 39IntelliSense 247interfejs u ytkownika
przycisk umo liwiaj cy dodanie pracownika294
przycisk usuni cia wybranego rekordu 289Internet Information Services 121internetowe us ugi informacyjne 495in ynieria spo eczna 148Isolation Level 332izolacja 339 466
JJavaScript Object Notation 117jQM 457jQuery
autocomplete 116pliki roacuted owe 113
jQuery Mobile 457jQuery UI 367
wykorzystanie przyciskoacutew 284JSON 117
obiekt typu adres 118
KKey Performance Indicators 403klasa
AccountController 198ActionExecutingContext 143AdminController 212Ajax 94AjaxOptions 94
atrybuty 95AspNetHidden 442AssemblyName 170Assert 29
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 531
AuthConfig 461BundleConfig 475Configuration 170ConfigurationManager 170ConfigurationSection 187 188ConnectionStringBuilder 345DpapiProtectedConfigurationProvider 187FiltryRaportuMacierzowego 397Form1 484FormsAuthentication 152Global 430HandleErrorInfo 133HtmlHelper 437HttpClient 483 486HttpResponseMessage 486kontekstu 362LogOnModel 198MarshallByRefObject 341Membership 152 198 211MvcApplication 430NorthwindContext 362ObjectContext 348ObjectQueryltTgt 348Order_Details 362Orders 361Osoba 228ParametryWatku 470Pracownik 484Products 361Produkt 230Raport 392RequestBrowser 460ResultExecutedContext 144ResultExecutingContext 144Roles 211RsaProtectedConfigurationProvider 187SQLConnCAS
definicja 340stowarzyszona z modelem 69SystemNetHttpFormattingJsonMediaTypeF
ormatter 491SystemTextRegularExpressions 74SystemWebSecurityRoles 159Task 465 472testuj ca 29Thread 465 469TransactionScope 327UrlRoutingModule 121ViewData 434 436 439WebApiConfig 478WebConfigurationManager 170Wpisy 427 436
klucze 237MAC 155obce 238podstawowe 238
kluczowe wska niki efektywno ci 403dynamiczna zmiana warto ci 404
Knockout 227wykorzystanie szablonoacutew JavaScript 230wywo anie skryptu 229
kodowanie danychprzekazywanych przez u ytkownikoacutew 186
komponentFormDanePracownika 489obiektu
PartialView 99typu ListBox 99
ReportViewer 368 375eksport danych 413nawigacja mi dzy stronami raportu 377
komponenty u ytkownika 30komunikaty o b dach 171
kod statusowy 174 175koncepcja programowania zdarzeniowego 16konfiguracja
po czenia z baz danych 241uprawnie puli aplikacji 454walidacji danych 66
konkurencyjno aplikacji 332kontekst wi zania 389kontrola wprowadzanych danych 263
metoda onColumnChanged 269wstrzymanie walidacji wiersza 267zako czenie edycji rekordu 267
wymuszenie 267kontroler 16 25
AccountController 195Admin 223AdminController 212aplikacja Kardy 63asynchroniczny 466
a zadania 472dane wyj ciowe 25domeny 150ErrorController 174Glosowania 103Home 182 224 228 231
Bezpiecze stwo 336filtr wyj tku 131
HomeController 184EksportDanych 415Northwind 245
interfejs Web API 477KsiegaGosciController 424
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
532 ASPNET MVC
kontrolerLista 93Mapa 33
autouzupe nianie 117modyfikacja 45
niedost pne metody publiczne 136obs uga POST 431panelu administracyjnego 212
zarz dzanie grupami u ytkownikoacutew 220Pracownicy 57 64PracownicyController
implementacja 481Produkty 351projektowanie 27przekazywanie danych do widoku
zmiany 439uwierzytelnienia 195
klasa 198model 196widoki 203
uzupe nienie o widok 31u ycie modelu odsy anego przez widok 440ValuesController 478weryfikacja funkcjonalno ci 28wi zanie adresu URL z akcj 430widoki 58
konwersja obrazu 278kreator
Add New Item 242Add View 59 302Application 162blokowania szczegoacute oacutew b doacutew 172dodanie u ytkownikoacutew 164grup u ytkownikoacutew 165Provider 162Publish Web 501Security 162tworzenia pracownika 59ustawie aplikacji 167widokoacutew 60wyboacuter dostawcoacutew us ug 178
kwerendy parametryczne 274 401
Llayout witryny 30LINQ
to Entities 349lista rekordoacutew 301
prezentacja 304logika
aplikacji 30bazodanowa 30biznesowa 44
a cuch QueryString 26
Mmaster 315mechanizm
automatycznych w a ciwo ci 57autoryzacji 157eksportu danych 413filtroacutew 127grupowania plikoacutew 475IntelliSense 119QuerynotString 117szyfruj cy 187transakcji 319 321
przelewy bankowe 326wyznaczania trasy przejzdu 34
meotdaInsert 299ProtectSection 191WersjonowanieDataRow
definicja widoku 265message authentication code 155metoda
on 262HtmlValidationSummary 204About 124AcceptChanges 255 263ActionLinkActionLink 61 63 353AddUserToRole 159akcji 25
parametry opcjonalne 27aktualizacja statystyk ankiety 105AktualizujZdjeciePracownika 288Application_AuthenticateRequest 108Application_BeginRequest 107 108Application_End 108Application_EndRequest 107Application_Error 108 172Application_Start 108 123 139 430asynchroniczna kontrolera 472AttachTo 356Authenticate 152AutoUzupelnienie 117
zapytanie LINQ 118BeginEdit 267BeginForm 47 94BeginTransaction 326 332CancelEdit 263ChangeObjectState 356
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 533
ChangePassword 200hiper cze 208widok 206
ChangePasswordSuccesswidok 206
CreateNazwaEncji 354CreateRole 159CreateUser 153czyBazaDanychIstnieje 326daneDostawcyForm 262DBeginnotEdit 263Delete 270DeleteObject 357DeleteRole 159DeleteUser 153DeszyfrujPlikKonfiguracyjny 191DodajDostawce 255DodajElementDoListy 94 97 101DodajGrupe 223DodajKomentarz 185DodajPracownika 299 491DopiszDoPlikuLog 430Edit 356EdytujDaneDostawcy 261EdytujDanePracownika 493Eksportuj 418EmptyResult 26EndEdit 263EndForm 47ErrorCodeToString 201Fill 246FillByCityName 275FormatDateTime 390FormsAuthenticationSetCookie 199GenerujDane 468Get(int id) 478GetAllRoles 159GetAsync 486GetChildRecords 291GetSection 170GetSectionGroup 170GetUser 153GetUsersInRole 160globalna
aplikacji ASPNET 108Grupy 223HasVersion 263HtmlListBox 97HtmlRenderPartial 101HtmlValidationSummary 61HtmlHelperLabel 437ImiePierwszegoPracownika 246 247Include 475Index 47 79 97 101
kontrolera Mapa 34testowanie 28
IsAjaxRequest 101IsMatch 76IsNotNull 29IsUserInRole 159Label 35ListaDostawcow 252 255ListaPracownikow 248
hiper cze skojarzone 249LogOff 198LogOn 198Macierzowy 397mapowalna 26MetodaAsynchronicznaWatki 472ModelStateAddModelError 199MvcApplicationRegisterRoutes 430obs uga zapyta POST 431odczyt aktualnych bilansoacutew kont 323OdczytajStanyKont 326OnActionExecuted 143OnActionExecuting 127 143onColumnChanged 269OnResultExecuted 144OnResultExecuting 144onRowChanged 266onRowChanging 268OpenConfiguration 170otwarcie po czenia z baz danych 341OtworzPlikDanych 107Page_Load 399PartialViewResult 26PobierzDane 394
modyfikacja 401PobierzPlikLogu 141 143PobierzZdjecie 278PokazTrasy 51PokazWyniki 107pomocnicza 25 455
HtmlEncode 51wykorzystanie 456
PostAsJsonAsync 486PostAsXmlAsync 486PostAsync 486PostResolveRequestCache 121PracownicyWedlugMiast
przechowywanie warto ci filtru 285PutAsJsonAsync 493PutAsXmlAsync 493PutAsync 493ReadAsAsync 486ReadXml 107ReadXmlSchema 107RedirectFromLoginPage 152
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
534 ASPNET MVC
metodaRedirectResult 26RedirectToAction 26RedirectToLoginPage 152RedirectToRoute 26RedirectToRouteResult 26RefreshReport 384Register 199 478RegisterAuth 461 462RegisterBundles 475RegisterGlobalFilters 171RegisterRoutes 94 123RejectChanges 256 263rejestrowanie zdarze aplikacji 430RemoveUserFromRole 160Render 384 413 418RenderPartial 99ResponseWrite 223ResultExecuteResult 143RoleExists 159RolesIsUserInRole 216RolesRemoveUsersFromRole 223route 35RowsAdd 255RozpocznijEdycje 269
hiper cze uruchamiaj ce 267SaveChanges 354ScaffoldingMasterDetail 317Session_End 108Session_Start 108SetAuthCookie 152SetParameters 401 405SignOut 152SprawdzDopasowania 79SprawdzPoprawnoscDatyZatrudnienia 67SqlPermissionAdd 343SqlTransactionCommit 326SqlTransactionRollback 326StronaNieIstnieje 175submit 115SzyfrowaniePlikuKonfiguracyjnego 190szyfruj ca i deszyfruj ca 189SzyfrujPlikKonfiguracyjny 191TextBox 35ThreadSleep 469 472TransactionScopeComplete 329Transfer 36UpdateUser 153UstawParametryRaportu 399UsunGrupe 223UsunTrase 50 51UtworzPracownika 64Uzytkownicy 216ValidateUser 152 153
ValidationMessage 437ValidationMessageFor 61ValidationSummary 437ViewResult 26WebApiConfigRegister 478WersjonowanieDataRow 265
sparametryzowanie 266WpisyZapiszDoPlikuXml 430wykonywanie przelewoacutew 323WyswietlLog 141 142 143wyswietlMape 34 35WyswietlTrase 50
modyfikacja 135 166wyznaczTrase 35ZaktualizujWyniki 107Zapami tajNazw U ytkownika 432ZmienStanKont 328
Microsoft SQL Server 319sposoby uwierzytelnienia 344
MIME type 390minification 476minimalizacja 476model 16 39
APM 464ChangePasswordModel 196EAP 465integracja z elementami aplikacji 39LogOnModel 196obs uga plikoacutew XML 427przesy anie z kontrolera do widoku 432 435RegisterModel 196TAP 465
model binding 48model danych encji 348
dodawanie encji 353edycja encji 355kreator 348 349
czenie encji 359metody akcji 354opcje 361projektowanie relacji 43tworzenie 349
schematu bazy danych 357usuwanie encji 357wyboacuter tabel 350
model first 52model zwi zkoacutew encji 347models 16Model-View-Controller 15Model-View-ViewModel 227Model-Widok-Kontroler 15modu
UrlAuthorizationModule 157
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 535
MVC 15a Web Forms 16 365 367 423
kod 442serwer internetowych us ug
informacyjnych 495wydajno 443wykorzystanie w projektach 444
ataki XSS 185autoryzacja 158 162bezpiecze stwo aplikacji 152buforowanie 134domy lne wzorce aplikacji 21kreator aplikacji 20mechanizm filtrowania 127Model Binder 355nazwa kontrolera 27obs uga interakcji klient-serwer 121parametry opcjonalne 27pobieranie parametru z adresu URL 26projektowanie aplikacji 18 52przetwarzanie dania aplikacji klienckiej 18sprawdzanie poprawno ci danych 68struktura modelu 39techniki walidacji danych 53utworzenie widoku 30uzupe nianie o komponenty graficzne 367walidacja 438wersja 4 449wyboacuter mechanizmu przetwarzaj cego widoki 21wzorce URL 122zbioacuter modeli szablonu aplikacji 196roacuted o danych 40
MVC4 449grupowanie i optymalizacja skryptoacutew 475kaskadowe arkuszye stylu 475przetwarzanie asynchroniczne 464przystosowanie do urz dze mobillnych 457testowanie aplikacji 457uwierzytelnianie 460
integracja z portalem Facebook 462wsparcie dla urz dze mobilnych 450zdalna autoryzacja 461
MVVM 227
Nnarz dzie
aspnet_regiis 187przetwarzanie tekstu 73
Northwindinstalacja 240kwerenda wybieraj ca 240pobieranie informacji o dostawcach 251
NuGET 483nullable-types 27
OOAuth 461obiekt
AppDomain 339 341Chart 406Command 239Connection 239 241
w a ciwo i 243ConnectionString 343
sposoby uwierzytelniania 344szyfrowanie informacji 335
DataAdapter 239DataGridView 491DataReader 239 273DataRow 255
kontrola wprowadzonych danych 263usuwanie rekordoacutew 270wersje 263wersja proponowana 265wersjonowanie 263w a ciwo ci 255
DataSet 239 244 345edycja rekordoacutew 257kreator konfiguracji TableAdapter 274modyfikacja danych 249tworzenie nowych rekordoacutew 250usuwanie rekordoacutew 271wstawianie rekordoacutew 251wymuszenie wi zoacutew integralno ci 292
DataTable 107DirectionsService 35dostawca 153FormCollection 47jqXHR 218List 389logiki biznesowej 348materializacja 348Matrix 390Membership 152MvcRouteHandler 121 122o okre lonym typie danych 244o silnej typizacji 244o s abej typizacji 247ObjectStateManager 348PartialView 98ReportViewer 368ReportViewerLocalReport 418Request 26 101 432Response 26Route 122ShippersRow 255SqlConnCAS 341SqlConnection 326
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
536 ASPNET MVC
obiektTableAdapter 239 244 273 274 345
edycja danych 279 286wstawianie danych 294
TransactionScope 329parametryzacja 331
typuadres 118AppDomain 466ConcurrentDictionary 479NorthwindDataSet 247ObjectSetltTgt 348Route 121Thread 466
UrlRoutingModule 121ViewBag 36
przekazywanie danych do widoku WebForms 376
ViewData 36 79 432Object Relational Mapping 347Object Services 348obs uga b doacutew
konfiguracja 132w czenie 129
odrzucenie informacji o transakcji 148od wie anie witryny
a fragment widoku 97aktualizacja zawarto ci 113cz ciowe 96
OnSuccess 96operator
await 474konkatenacji 382Top 411Top N 411
ORM 347
Pparametr
CountryName 401data 115filtr 117mapDivId 35maxIloscRekordow 117Order 137raportu 395scopeTimeOut 330
warto ci 330TransactionScopeOption
warto ci 329type 115
parametryzacja kwerend 274partial view 30
piaskownica 341Plain Old CLR Object 360platforma NET
us ugi uwierzytelniania 153plik
ascx 22aspx 22bmp 390cookie 151cookies 154 155cshtml 22 434css 475edmx 360jpg 390js 475konfiguracyjny
zabezpieczenie 187master 22png 390rdl 368rdlc 368tekstowy
wy wietlenie w przegl darce 143vbhtml 22
POCO 360pola klucza 237polecenie
HtmlEncode 187ScriptsRender 476StylesRender 476GET 18POST 18
po czenieze roacuted em danych 241
pomocnik HTML 455Portable Document Format 413po rednik 341poziom izolacji 332
Chaos 333konfiguracja 332ReadCommitted 333ReadUncommitted 333Serializable 333Snapshot 333Unspecified 333
poziom zaufania 339ograniczenie 340
proceduraajax 115AjaxBeginForm 96niemapowalna 26PartialView 26serialize 115
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 537
proces 465programowanie
oparte na zdarzeniach 17zdarzeniowe 17
projekt aplikacji MVCankieta 102asynchroniczne przetwarzanie da HTTP 92Bezpiecze stwo 181 336
nawi zanie komunikacji ze roacuted emdanych 342
szyfrowanie pliku konfiguracyjnego 191dodawanie i wy wietlanie komentarzy 183domy lny 20EksportDanych 413Filtry 131formularz oceny 107Kadry
walidacja adresu e-mail 84Kardy 55KsiegaGosci_MVC3 424lista prezentuj ca dodawane elementy 97MojaNawigacja 18
blokowanie samodzielnego tworzeniakont 224
buforowanie danych 135implementacja warstwy dost pu 42instalacja na serwerze IIS 500komunikat powitalny 168komunikaty 110komunikaty o b dach 173mechanizm podpowiedzi 115model weryfikuj cy po wiadczenia
u ytkownikoacutew 196modele kontrolera uwierzytelnienia 196od wie enie widoku mapy 109struktura 21szablon 19szablon witryny 225trasowanie da HTTP 123uzupe nienie o baz danych 40uzupe nienie o walidacj danych 69widok b du 175zablokowanie nieautoryzowanego
dost pu 128zarz dzanie u ytkownikami 163zarz dzanie grupami u ytkownikoacutew 212zarz dzanie procesem logowania 198
MsAjax 92NorthwindMVC 241
lista rekordoacutew 301szablon witryny 250
POCO 361priorytety regu filtrowania 137
Raport 368szablon
mechanizmy uwierzytelnienia 156zarz dzanie grupami u ytkownikoacutew 159
Transakcje 319aktualizacja danych 328formularz aktualizacji 328szablon stron 320
uzupe nianie widokiem GridView 49WyrazeniaRegularne 76Zapytania_EF 349
projekt aplikacji MVC4AsynchronicznyKontroler 466
prezentacja danych 468AutoryzacjaOAuth 461implementacja serwisu sieciowego 479konfiguracja grupowania 475MobileMvc 450
testowanie 457pobranie zdj cia 452przygotowanie listy pracownikoacutew 452SerwisSieciowy 477
projekt aplikacji Windows Formsedycja danych 487KlientWebAPI 483tworzenie nowych pracownikoacutew 486
dania typuDELETE 493POST 486PUT 491
projektowaniekontrolera 27widoku 31
protokoacuteFTP 495Kerberos 150NTLM 150SMTP 495SSL 337
proxy 341przechowywanie
informacji o trasach 44wynikoacutew g osowania 107
przeci enie aplikacji 147przekazywanie
danych 44mi dzy widokiem a kontrolerem 36
parametroacutew do metod akcji kontrolera 26przestrze nazw
SystemThreading 465przyjazne linki 122publikowanie aplikacji 495 500
na serwerze IIS 497
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
538 ASPNET MVC
pule aplikacji 465 497konfiguracja 498Windows 7 499Windows 8 500
Rraporty
dane w postaci macierzowej 390data 386definicja
dynamiczna 418filtrowanie danych 394
na poziomie roacuted a 401 418filtry 395formaty prezentacji danych 379grupowanie danych 381hiper cza 387
nawigacyjne 376kolumny obliczeniowe 378konfiguracja
filtrowania dynamicznego 396typu 392roacuted a danych 368
kreator formu 382macierzowe 391numery stron 386obrazy 390parametry 383 394
konfiguracja 399paski narz dziowe 379pola
bazy danych 386formularza 398raportu 390
po czenie z aplikacj 368prezentowanie uk adu graficznego 383projektowanie 371
i prezentowanie 368przystosowanie strony do obs ugi raportoacutew
387renderowanie 368tryby definicji 368tworzenie
definicji lokalnej 368formu 378przy u yciu kreatora 372
uk ad 383wstawianie nag oacutewka i stopki 385wykresy 406wy wietlenie 375
Razor 21 30przetwarzanie definicji widoku 208
RDL 418rekordy
edycja 307lista 301tworzenie 311usuwanie 305
Relationship 347Report Definition Language 418Report Wizard 371repudiation 148request 442response 442responsywno 464rollback transaction 319routing 22 430routowanie 121
SSandBox 341scaffolding 301Secure Socket Layer 337sekcja
membership 178roleManager 179set 441
serwerSMTP
konfiguracja 171us ug informacyjnych 149
weryfikacja to samo ci u ytkownika 149Simple Mail Transfer Protocol 495s owo kluczowe
helper 455await 474using 47 329
spaghetti code 18spoofing 147SQL Server Reporting Services 367SSRS 367stan pola
typu CheckBox 269pobieranie 264
STRIDE 148strona startowa
MojaNawigacja 226strona wzorcowa 30
aplikacji Kadry 55referencja do bibliotek skryptoacutew 70
systemowy serwer us ug informacyjnych 121szyfrowanie po czenia 335
ze roacuted em danych 336
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 539
Ttabela danych
Categories 418Customers 305deklaracje kaskadowych arkuszy stylu 275edycja
danych 279danych w wierszu 257rekordoacutew 307 310
Employees 240 288filtrowanie listy 275integralno danych 288Konta 321 326kwerenda wybieraj ca 240Orders 291 315OrdersDetails 307pobieranie fotografii 276pobranie danych z wykorzystaniem JScript 280prezentacja
danych 277 325informacji 252listy danych 248pierwszego rekordu 246rekordoacutew 317
przekazanie do widoku 248Shippers 251tworzenie rekordoacutew 311umieszczenie w bazie danych 321uruchomienie edycji danych 258usuwanie
danych 288rekordoacutew 271 305 306
widok b du 268wstawianie
danych 294rekordoacutew 251
wy wietlenie listykonfiguracja hiper cza 315
zako czenie edycji rekordu 267tablica asocjacyjna 479tablica bajtoacutew
konwersja do bitmapy 277tampering 147task pane 371Task-based Asynchronous Pattern 465TDD 15
test jednostkowy funkcjonalno ci kontrolera28
Test-Driven Development 15testowanie
aplikacji 29wzorcoacutew wyra e regularnych 76 78
Toolbox 274
transakcje 319automatyczne zarz dzanie 327otaczaj ce 329poziom izolacji 332tworzenie i r czna kontrola 319
trasowanie 121aplikacja 430blokowanie dost pu 124domy lne regu y 123Ksi gaGosci_MVC3 430w asne regu y 124
trasowanie adresoacutew URL 121T-SQL 319
czynno ci bazodanowe 345tworzenie
bazy danych 40interfejsu u ytkownika
jQM 459szablony 231wzorzec MVVM 227
u ytkownika 200kody b doacutew 201
widoku Index 231wzorcoacutew wyra e regularnych 76
typed DataSet 244typizacja
silna 46s aba 46
typy puste 27
Uujawnienie krytycznych informacji 147ukryte pola 441Uniform Resource Locator 18URL 18uruchomienie aplikacji 503us uga
AspNetSqlProvider 178ustawienia aplikacji 167
odczytanie z pliku konfiguracyjnego 169UTC 155uwierzytelnienie 149
centralny serwis 151certyfikaty 150formularze logowania 151
atrybuty elementu forms 154konfiguracja 153mechanizmy zintegrowane z ASPNET 149na bazie protoko u NTLM 150przekazywanie informacji 151proste 150skroacutecone 150us ugi systemu Windows 150
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
540 ASPNET MVC
Vvariable placeholders 122view engine 21views 16viewstate 442Visual Studio
kreator projektu 19Visual Studio Development Server 496VS 2012
instalacja 240kreator Add New Item 242
VSDS 496
Wwalidacja
adresue-mail 83URL 83WWW 84
danych 53a technologia Entity Framework 68konfiguracja 66modelu Pracownik 66odwo anenie do jQuery 61po stronie klienta 67wyra enia regularne 73
skrypty i style walidatoroacutew 438w asno ci klasy encji 435
w tek 465Web API 477
edycja danych 491klient 483konfiguracja interfejsu 478obs uga da typu POST 486pobranie danych z serwera 485serwis sieciowy 479usuwanie danych 493
web serwer 495Web Site Administration Tool 161
konfigurowanie uprawnie 165zarz dzanie
dostawcami us ug 178u ytkownikami 163
WebForms 17bezpiecze stwo aplikacji 152integracja komponentoacutew z MVC 367kontrolka Repeater 434obs uga wyj tkoacutew 172przetwarzanie dania aplikacji klienckiej 18separacja modelu 427weryfikacja poprawno ci projektu 434
weryfikacjakodu pocztowego 81to samo ci 151
widok 16 25 30aplikacji
MVC4 453przystosowanie do urz dze mobilnych
459Transakcje 326
cz ciowy 30dodawanie 31edycji klienta 307elementy 31formularz
dodawania wpisu 425logowania 203
kontroleraaplikacja Kadry 58panelu administracyjnego 222
kontrolera AdminController 213kontrolera Dopasowania 77kontrolera ErrorControler 174kontrolera Glosowania 103kontrolera Home 131 169 182 307
metodaWyswietlLog 142Raport 375Transakcje 320
kontrolera HomeController 246AsynchronicznyKontroler 468EksportDanych 417
kontrolera Lista 93kontrolera Mapa 33 34
formularz 70Trasa 50
kreatorakonta u ytkownika 205zmiany has a 206
listyklientoacutew 302pracownikoacutew 61wyznaczonych tras 48zamoacutewie 316
mapyod wie enie 108parametryzacja 34
mechanizm przetwarzania 30modyfikowanie formularza 437obs uga wyj tkoacutew 130Pracownicycshtml 453projektowanie 31transfer danych do kontrolera 36typu CRUD 52
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę
Skorowidz 541
typu GridViewimplementacja 48
typy plikoacutew 30utworzenie 30uzupe nianie tre ci 33walidacja 435wi zanie z modelem 437wstawianie rekordoacutew 312wynikoacutew ankiety 105wy wietlanie wpisoacutew 432
wielodziedziczenie 360Windows Authentication Provider 149Windows Data Protection API 187Windows Forms
implementacja klienta 483Windows Live ID 149w a ciwo
ConnectionString 243IsMobileDevice 460ModelStateIsValid 47
wstawianie rekordoacutew 299wstrzykni cie kodu 181 185wykresy 406
konfiguracjaserii danych 407typu 407
pobranie danych roacuted owych 408wy czenie aplikacji 171wyra enia lambda 46wyra enia regularne 73
atrybuty modelu 84liczba wyst pie sk adnikoacutew 76wzorzec
adres URL 83imi e skie 81kod pocztowy 80tworzenie 76
znaki i cyfry 74znaki specjalne 74znaki w wyznaczonych miejscach a cucha 75
wzorzecodnajdywanie
znakoacutew i cyfr 74znakoacutew specjalnych 74znakoacutew w wyznaczonych miejscach
a cucha 75okre lanie
liczby wyst pie znakoacutew 76
XXSS 181
Zzabezpieczenia
aplikacji bazodanowych 335ataki XSS 187informacje o b dach 171kodu po redniego 338konfiguracja 161konfiguracja aplikacji
kreatory 162obs uga wyj tkoacutew 171pliku konfiguracyjnego 167 187przed atakami 148ustawienia aplikacji 167witryny 181zarz dzanie dostawcami us ug 178z o liwy kod 181
zarz dzanieu ytkownikami i grupami 211
dost p do panelu administracyjnego 216lista grup 221podzia na grupy 220pobieranie listy 213tworzenie nowej grupy 222zmiana przynale no ci do grupy 215
z o ono ci aplikacji 16zdarzenie
DataGridViewCellDoubleClick 491rejestrowanie 430
z o liwy koddzia anie 181
znacznikinput 288
znaki specjalneodnajdywanie 74
zwi zanie z modelem 48zwi zek 347
danie 25asynchroniczna obs uga 92 466 470
skrypty 318zadania 473
GET 64POST 64przetwarzanie 127zablokowanie obs ugi 124
Kup książkę Poleć książkę
Notatki
Kup książkę Poleć książkę