Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

informații istorice

În cele mai vechi timpuri, când NET Framework a fost în originile sale, și am scris codul numai pe Pascal'e. Hmm. se pare că se transformă atât de foarte mult timp, astfel încât va simplifica schema descriere. În cazul în care site-ul a început www.calabonga.com a fost ușor să urâțenie. De-a lungul timpului, ea a trebuit să fie folosit ca un teren de testare pentru punerea în aplicare a ideilor aplicabile altor site-uri sunt făcute la comandă. Dupa ce a petrecut un număr de ani, site-ul cu umor transformat în coșul de gunoi (până de curând împodobit numele și titlul). Este timpul pentru a transforma site-ul, și de a folosi inovații în dezvoltarea unui web și, în special, ASP.NET MVC. Voi folosi ASP.NET 3, deoarece eu nu doresc să comunice cu ASP.NET 4 Beta în vigoare din nou în versiunea beta parametru. Să spunem doar că proiectul, care lucrează la locul de muncă, prea multe defecte și defecte în această versiune.

instrumente

Deci, de când m-am dus să vorbesc despre instrumente inspolzuemye, lista acestora:

Am act de faptul că această listă este de până la finalizarea proiectului nu va fi modificată o dată. Toate celelalte vor face cursul.

Crearea unui nou proiect numit Calabonga.Mvc.Humor în parametrii MVC sunt selectați Internet Application și motorul de ras.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Eu conduc. Compilat. Acesta funcționează. Frumusețe.

Selectarea jQuery UI

Am ales schema de culori de pe site-ul www.jqueryui.com face mai ușor pentru a gestiona în proiectarea viitoare. Am ales această schemă de culori:

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Am conecta mai târziu, atunci când este necesar.

În ceea ce privește în stare proaspătă tine, tovarășe?

Înainte de a începe să dezvolte clase pentru noul meu site-ul care urmează să fie modernizate, prima actualizare toate nuget-pachete. În acest scop, în panoul nuget-manager voi da comanda:

execuție de actualizare comandă poate fi văzut în jurnalul de consolă:

Acum, un pic de utilități utile

Voi adăuga câteva pachete. Un pachet este numit MvcTools. al doilea - PagerListExt. I a instala:

Ce fel de pachete, și ceea ce fac, voi încerca să descrie în detaliu în procesul de dezvoltare a site-ului de stimulare „Muzeul de umor.“ Deci, după actualizarea și instalarea de pachete suplimentare nuget-mi structura proiectele mele este după cum urmează:

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Am pus lucrurile în ordine. Pentru a face acest lucru, eliminați vechiul fișier șablon _Layout.cshtml. și un nou registru pentru a utiliza _ViewStart.cshtml fișier implicit:

Înainte de a începe un proiect pentru a compila, este necesar să se depună _LayoutExtended.cshtml versiunea corectă a script-uri și fișiere de stil în cascadă, în conformitate cu actualizările primite ca urmare a comanda update-pachet. Eu, la momentul scrierii, versiunea a fost după cum urmează:

Notă linia de cod care se conectează script-ul de la jquery-ui-1.8.19.custom.min.js (jQuery UI), ar trebui să fie adăugate la fișierul proiect pentru acest script. Iar cascada de stiluri, de asemenea, în directorul / conținut / temă. După cum am menționat, voi proiecta mai târziu, și script-urile și css-fișiere ar trebui să adăugați în continuare la proiect - nu va interfera. Eu conduc proiectul. Acasă părea - asta e bine! I clic pe Intrare - obține o eroare care jQuery nu este găsit. Din fericire, eu știu de ce sa întâmplat și de ce-ți spun. Este necesar să se încheie pe pagina de script-uri (vizualizare) Login.cshtml într-o etichetă specială, care a apărut după MvcTools de instalare.

De ce sau de ce a fost făcută, puteți vizualiza sgenerirumom HTML-cod după site-ul de lansare. Acum, toate script-urile sunt plasate după HTML principal chiar înainte de eticheta de închidere . Acest lucru înseamnă că script-urile nu începe executarea sa înainte de documentul (DOM) este încărcat. Mai multe despre acest lucru într-un articol pe acest subiect (în cazul în care cineva este interesat).

clase de Poco sau în cazul în care același model?

Dacă vorbim despre codul În primul rând, că „primul cod“ înseamnă deja că trebuie să începem să ne gândim la modele (clase), care vor fi utilizate în cerere. I-am scris un site care este numit „Muzeul de umor“, de unde și numele clasei:

Și un cuplu mai mult în Planșa clasă:

Acum, un pic de atribute proprietățile și va fi gata prima versiune a modelului bazei de date. La aceasta trebuie adăugat la lista System.ComponentModel.DataAnnotations de spațiu de nume utilizat. Asta acum uita-te clase:

Tot de dragul datelor

Este timpul pentru a se conecta la baza de date. În primul rând, un pic explica. Faptul este că am în etapa de proiectare va avea doua conexiuni la baza de date. Aceasta este de două în șirul de conexiune Web.config este specificată. Primul este de a lucra cu baza de utilizatori, al doilea - este utilizarea necorespunzătoare cu clasele de model. Acest lucru ridică întrebarea - „De ce?“ Chiar și ținând cont de faptul că, în EntityFramework versiunea 4.3 va avea un astfel de lucru minunat ca migrații. Vine întotdeauna un moment în procesul de dezvoltare, atunci când baza de date este mai ușor de îndepărtat decât să-l scrie pentru migrare. Deci, pentru a nu fi eliminate de către utilizator, voi păstra modelul și utilizatorilor în diferite baze de date.

Crearea unei baze de date de utilizator. Deschideți Microsoft SQL Mamagment Studio și de a crea o nouă bază de date. Numele acesta - muzeu.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Gata! Acum este necesar pentru a inițializa tabelele ASP.NET de membru la baza de date nou creată. Într-un set de ansambluri NET Framework au o mulțime de utilități utile. Un aspnet_regsql.exe. Am acest utilitar este în folderul:

Rețineți că dosarul Framework64 spune sistem de 64-razradnoy, dacă aveți o versiune pe 32 de biți de Windows, cifrele nu vor fi în numele folderului cu Framework'om.

Rulați utilitarul. A se vedea caseta, faceți clic pe Următorul. Vom ajunge la pagina de selecție de acțiune: „adăugare“ sau „șterge“. Noi trebuie, desigur, pentru a adăuga. Faceți clic pe Next.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Acum, alegerea numelui serverului SQL si baze de date.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Faceți clic pe Next și Finish. Și înainte de a începe adăugarea unui utilizator, trebuie să specificați în șirul de conexiune de fișier web.config la baza de date. șir de caractere meu conexiune vygyadit după cum urmează:

Acum există o bază este necesar pentru a arunca un pic de utilizatori mici. Ne întoarcem la studio și începe site-ul configuratorul (Web site-ul instrument de administrare).

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Apoi, du-te la secțiunea „Securitate“ și adăugați un singur utilizator. Probabil nu va crede, dar eu voi adăuga.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

Vă rugăm să rețineți că la oamenii de moment sunt 0. Acest lucru indică faptul că conexiunea bazei de date este corectă.

Povestea MVC unuia dintre proiect - gata de decolare - (partea 1)

În continuare, punct cu punct:

1. Porniți rolul site-ului.

2. Adăugați un rol „Administrator“.

3. Crearea unui utilizator, nu uitați să specificați daw „Administrator“ dreapta.

4. Uită-te la valoarea adăugată - chiar acum există un utilizator cu privilegii administrative.

Rezultatele acestui articol

Avem aproape totul gata pentru a începe dezvoltarea site-ului. Avem:

  • Format (deși standard)
  • Utilizator de bază (chiar dacă numai unul)
  • Conectat la rolul site-ului (da, din nou, doar unul)
  • Modelul de date primare (care este mult mai diferit adăugat mai târziu)
  • script-uri utilitare sunt gata pentru a fi distribuite (inclusiv așa-numitul UserControl)
  • Actualizat toate incluse în cadrele laterale ale proiectului.

>> Mai ales dacă este dezvoltarea unui colectiv (Team Foundation Server).

>> Crede-mă, este foarte ușor, mai ales la începutul dezvoltării.

dar despre masa picătură auzit? și am auzit cheile străine de pe utilizator? și cum să le facă diferite în cazul în care baza - și, în general, este posibil de a gestiona zasrat (scuzați expresia - celălalt nu este adecvat), cadru care este mai ușor de îndepărtat decât baza tabelului? (Sau elimina datele din tabel - prea ușor pentru a șterge din tabelanume)

Sunt de acord cu faptul că datele pentru cota de baza de date a 2-a - decizie inteleapta, nu are nici un raționament normal.

Calabonga, în Esposito, la care vă referiți, dacă nu mă înșel, a fost foarte bine pictat exact ceea ce MVC este implementat in ASP .NET MVC. Este necesar să-l distinge de original Paterna MVC, care a fost închis pentru sisteme interactive, mai degrabă decât aplicații web.