MVC4 framework

304 views

Published on

MVC3 Framework and Entity Framework

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
304
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • ASP.NET MVC3- framework za izradu web aplikacija koji koristi MVC pattern, obrazac , po kojoj se izraduje aplikacijaMVC- dijeli aplikaciju na 3 dijela: model view i controllerModel predstavlja dio aplikacije koji primjenjuje logiku aplikacije odnosno model predstavlja i radi u doemi baze podataka.View- predstavlja komponente koje se prikazuju korisniku kao korisničko sučelje.Uglavnom se view kreira na temelju dohvaćenih podataka iz baze-Controler-komponenta koja obraduje sve naredbe dobivene preko korisnickog sucelja, radi sa Model dijelom aplikacije te odabire odnosno daje naredbu što će se prikazati korisniku na zaslonu.View samo prikazuje informacije,a kontroler obrađuje sve ono što korisnik odabere preko tog view-a
  • -MVC pattern pomaze u kreiranju aplikacija kod koje ce odredeni dijelovi programa biti odjeljenji.-Mozemo reci da svaka web aplikacija ima nekakva 3 osnovna dijela, imamo Input logic,bussiness logic , and UI logic-MVC forma točno govori što će koji dio odrađivati.Tako da bussines logic pripada modelu, input logic controller dijelu, UI logic pripada viev dijelu-Ovakav način razmišljanja ,odnosno kreiranja aplikacije omogućuje nam da se nosimo sa složenošću aplikacije jer nam omogućuje da se fokusiramo na samo dio aplikacije.Npr : mozemo se skoncentrirati samo na view bez da nas zanima što se u pozadini događa npr s bazom podataka.-Također ovakav način je odličan za veće timove ljudi gdje se skupina ljudi bavi samo s pojedinim dijelom aplikacije-Omogućuje jednostavnije testiranje aplikacija nego što je slučaj kod Web Formi jer recimo kod Web formi pojedinacna klasa sluzi i da posalje nekakav prikaz na zaslon i da obradi nekakve korisnicke zahtjeve
  • Entity framework je ORM framework za . NET koji služi za kreiranje baze podataka.ORM, Object relational mapping u progrmiranju je jedna vrsta tehnike koja olakškava rad s bazama podataka, odnosno značajno pojednostavljuje pristup bazi podataka, odnosno podacima koji se nalaze unutar same bazeNpr: Kod OO programiranja uglavnom govorimo o nekakvoj manipulaciji s objektima koji su ne skalarne veličine. Uzmimo za primjer telefonski imenik. Imamo naprimjer objekt Osoba koji bi imao nekakve svoje atribute koji bi ga opisivali, ime prezime broj telefona adrese. Naravno imao bi i pripadajuce metode koje bi vracale ili postavljale odredene vrijednosti. Unutar samog programa bio bi jedinstveni objekt. Međutim problem se pojavljuje kada trebamo takav tip spremiti u bazu podataka jer uglavnom se u bazu spremaju skalarne velicine s kojima se moze manipulirati kao što su stringovi i integeri. Programer tu mora transformirati taj objekt u grupe jednostavnijih varijabli kako bi se pohranilo u bazu podataka. EF upravo ovdje pokazuje glavnu prednost jer smanjuje količinu koda koja je potrebna kako bi se ta tranfosrmacija izvela.
  • Kao što se vidi iz dijagrama postoje različiti pristupi i metode korištenja Entiti frameworkaImamo Database first: ukoliko već imate bazu podataka, Entity framework moze automatski generirati data model koji bi sadrzavao klase i svojstva povezane sa podacima unutar same baze podataka.Model first: Ukoliko nemate bazu podataka možemo koristit Entity framework dizajner unutar samog visual studija. Nakon što kreiramo model iz tog modela kreira se baza podataka.Treći pristup i pristup koji ćemo koristit u izradi naše MVC aplikacije unutar Software startup academya je Code First. Bez obzira da li imate ili nemte bazu podataka mozete jednostavni napisati kod ,odnoson klase sa svojim svojstvima i pomoću Entity frameworka jednostavno nastaje nova baza podataka. Upravo iz tog razloga mozda cete naici na naziv Code Only jer nema potrebe za dizajniranjem baze jednostavno napišete klasu sa svojstvima i entitiy framework će kereirati bazu
  • Razor je sintaksa ASP.NET koju koristimo za kreiranje dinamičkih web stranica kombinirajuci C# i HTML.Razor je objavljen u 1.mjesecu 2011. godine tako da je relativno novi engineASP.NET je oduvijek podržavao koncept tih „view enđina” kao nekakvih modula koji se jednostavno primjene unutar same aplikacije i koji koriste razlicite sintaksne opcije. Razor je upravo jedan od tih enđina kod kojeg je temelj HTML ali podržava i C# i VB. Razor je jedan tradicionalni ASP.NET ajmo reći prezentacijski jezik jer nije programski no dosta lakši za shvatit..cshtml.vbhtml
  • Jedan primjer koda za Razor gdje mozemo primjertiti imamo standardne tagove HTML medutim vidimo ovu liniju koda koja prikazuje trenutno vrijeme na serveru.
  • Razor viev enđajn nije ništa novo, samo koristi vaša postojeća znanja o HTMLu i recimo C# ili VB kako bi donijeo nove mogućnosti u sam prikaz web stranice. Također kao i za html nije vam potreban nikakav poseban program, dovoljno je pokrenuti najobicniji text editor i u njega sve zapisati. Naravno budući da se koristi C# svakako bi bilo bolje koristit Visual Studio zbog intelisensea.
  • Controller je ustvari clasa čiji naziv određuje URLGlavna klasa za sve controlere je ControllerBase klasa koja osigurava ispravno funkcioniranje cijelog MVC konepta.Controller clasa nasjedulje ControllerBase klasu
  • Controller klasa zadužena je da na svkai korisnicki zahtjev pronade odgovorajacu metodu i pozove ju naravno uz to je potrebno i provjeriti da li je uopce dozvoljeno pozvati tu metoduPreuzima vrijednosti koje kasnije proslijeduje metodi i na temelju paramatera vraca odgovaraju viewUkoliko dolazi do pogreske Controller clasa odraduje sve moguce slucajeve
  • Npr: korisnik unese URL u svoj browser , klikne na link ili pošalje nekakvu formu , u svakom od tih slučajeva šalje se zahtjev na server. URL sadrži informacije se koriste kako bi se pozvala ispravna Action Methoda.Recimo korisnik unese URL i posalje zahtjev a MVC aplikacija koristeci odredena pravila tocno zna koji controller odnosno koju metodu izvršiti.Na primjeru ćemo pokazati kako izgleda link odnosno URL, te vidjeti izgled tog linka te kako iz njega mozemo iscitat naziv kontrolera i metode koja ce se pozvati.
  • Nekih vecih razlika izmedu MVC3 i MVC4 nema.Ovdje su navede nekakve 3 razlike mozda najvaznije za spomenuti u kontekstu ove akademije.Template koji se koristi za kreiranje ASP.NET MVC4 projekta je apdejtana odnsno sada to izgleda modernije, ustvari više sliči na današnje moderne web straniceDruga bitna razlika je templatea za kreiranje mobilnih web stranica, dakle ukoliko zelimo kreirati web stranicu iskljucivo za mobilne uredaje i tablete koristimo taj template. On je povezan s ovom 3 natuknicom, koristi naime jQuery mobile, open source library koji sluzi za razvijanje web aplikacija koje moraju biti optimizirane za touch UI
  • MVC4 framework

    1. 1. ASP.NET MVC4 framework Ivan Marković ivan.markovic@outlook.co m
    2. 2. MVC
    3. 3. MVC ASP.NET MVC4 Web application framework Alternate for ASP.NET Web Forms MVC=Model-View-Controller Architectural pattern
    4. 4. Advantages of an MVC-Based Web Application Easier to manage complexity(input logic, business logic, and UI logic) Better support for test-driven development(TDD) Better for large teams of developers
    5. 5. Model
    6. 6. Entity framework(EF) Object relational mapper(ORM) framework for .NET Eliminates the need for most of the data-access code that developers usually need to write.
    7. 7. Entity Framework Development Approaches
    8. 8. View
    9. 9. Razor View Engine for ASP.NET Optimized arround HTML
    10. 10. Razor-example <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>Web Pages Demo</title> </head> <body> <h1>Hello Web Pages</h1> <p>The time is @DateTime.Now</p> </body> </html>
    11. 11. Advantages: Compact, Expressive, and Fluid Easy to Learn Is not a new language Works with any Text Editor
    12. 12. Controller
    13. 13. Controller The ASP.NET MVC framework maps URLs to classes that are referred to as controllers The base class for all controllers is the ControllerBase class
    14. 14. The Controller class is responsible for the following processing stages: Locating the appropriate action method to call and validating that it can be called. Getting the values to use as the action method's arguments. Handling all errors that might occur during the execution of the action method.
    15. 15. Action Methods ASP.NET MVC applications is organized around controllers and action methods. The controller defines action methods. Controllers can include as many action methods as needed. /[Controller]/[ActionName]/[Parameters]
    16. 16. MVC3 vs MVC4
    17. 17. Difference Enhancements to Default Project Templates Mobile Project Template jQuery Mobile, the View Switcher, and Browser Overriding
    18. 18. Example time

    ×