Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Vállalati adatok megnyitása a külvilág felé

Hasonló előadás


Az előadások a következő témára: "Vállalati adatok megnyitása a külvilág felé"— Előadás másolata:

1 Vállalati adatok megnyitása a külvilág felé
Árvai Zoltán Oktató, webfejlesztő Számalk Zrt

2 Bevezetés a Kánaánba Az előadás célja Útravalók
Vállalati adatok kinyitása a világ felé, oly módon, hogy tetszőleges platform számára elérhető és értelmezhető legyen Ne fájjon  Útravalók Használjunk Entity Framework-öt adatmodellként, az egyszerű adatkezelés érdekében ADO.NET Data Services-zel publikáljuk az adatainkat AtomPub formátumban, hogy mindenki értse

3 Gyakori ”szolgátatás-központú” szituációk
HTML + JavaScript Data (XML, stb) DLL + XAML Data (XML, stb) Data (XML, stb) Mashup UI Data Feed AJAX alkalmazások Silverlight alkalmazások Online Szolgáltatások Mashup-ok

4 Hogy néz ki a klasszikus módszer?
Hogy néz ki a klasszikus módszer? using (SqlConnection c = new SqlConnection(…)) { c.Open(); string sql = "SELECT c.Name, c.Phone, c.CreationDate " + "FROM Customers c " + "WHERE SqlCommand cmd = new SqlCommand(sql, c); "London"); SqlDataReader dr = c.ExecuteReader(cmd); while(dr.Read()) { string name = dr.GetString(0); string phone = dr.GetString(1); DateTime date = dr.GetDateTime(2); } Lerkédezés stringként Muszáj paraméterezni Az elem típusáról nincs infó Ha elszáll, futásidőben teszi Nincs IntelliSense sem

5 Ez így fáj….

6 ADO.NET Entity Framework v1
ADO.NET Entity Framework v1 ORM eszköz .NET osztályokat SQL adatokhoz köt Linq-es lekérdezéseket átalakítja SQL lekérdezéssé ADO.NET fölött csücsül Kiterejedt támogatást nyújt változáskövetésre (teljes CRUD), tranzakciókat, konkurrencia problémákat hatékonyan képes kezelni. De Mitől más?

7 Entity Data Model - EDMX
Entity Data Model - EDMX • CSDL – Hogy néz ki egy entitás? • SSDL – Mi van az adatbázisban? • MSL – Hogy kapcsolódnak össze? Conceptual Model Map Storage/Logical Model Entity Data Model Schema Datastore Objects Schema *.CSDL *.MSL *.SSDL OO osztály (Property + Metódus RDBMS (tábla, nézet, SP-k, Fv-k)

8 LINQ to Entity Framework
from c in db.Customers where c.City =="London” select c.CompanyName Application db.AddToCustomer(c1); c2.City = ”Boston"; db.DeleteObject(c3); IQueryable<T> Objects SaveChanges() LINQ to EF (ObjectContext) SQL Query or SProc Resultset DML vagy SProcs INSERT INTO Customer … UPDATE Customer … DELETE FROM Customer … SELECT CompanyName FROM Customer WHERE City ==‘London' RDBMS

9 Northwind adatmodell elkészítése
Demó Northwind adatmodell elkészítése Semmi extra, csak az EF adatmodellt elkészítjük, picit megnézzük hogy a designer mit mutat, meg belenézünk, hogy mit generált. (extrán lightosan)

10 Web szolgáltatások (ASMX, WCF)
1) GetCustomer(int id) 2) GetCustomers() 3) GetCustomers(string orderBy) 4) GetCustomers(string orderBy, string sortDirection) 5) GetCustomers(string orderBy, string sortDirection, int offset, int count) 6) GetCustomers(string orderBy, string sortDirection, int offset, int count, string filter, string filterValue)

11 Ez így fáj…

12 Elvárások egy adatcentrikus szolgáltatás felé
CRUD Lapozás Rendezés Szűrés RESTful Kiterjeszthető

13 ADO.NET Data Service (IQueryable) WCF Service DataService<T>
Entity Data Model CLR Model (IQueryable) LINQ To SQL Model Custom Model

14 Hogyan fogunk tudni lekérdezni bármit is?

15 Címzés Resource URI Szolgáltatás AdventureWorks.svc Entitás halmaz
AdventureWorks.svc/Customers Entitás AdventureWorks.svc/Customers(1) Reláció AdventureWorks.svc/Customers(1)/Address Property AdventureWorks.svc/Customers(1)/Address/City AdventureWorks.svc/Customers(1)/FirstName

16 Adatok publikálása ADO.NET Data Services segítségével
Demó Adatok publikálása ADO.NET Data Services segítségével ADO.NET DS réteg elkészítése, access rule-ok. Lekérdezések url szintaktával. (ha idő engedi, service operation is írható....)

17 Query operátorok Rendezés Lapozás Szűrés Mohó kiértékelés
$orderby [asc | desc] Lapozás $skip $top Szűrés $filter Mohó kiértékelés $expand

18 Összetett lekérdezések futtatása
Demó Összetett lekérdezések futtatása Lekérdezés, ahol szűrünk, rendezezük, top, skip stb...

19 Kliensek Data Service

20 Mit tud a kliens proxy? OO hozzáférés az adatokhoz Változás követés
Konkurrencia kezelés Kötegelt művelet végrehajtás

21 AJAX kliens készítése ADO.NET Data Services-hez
Demó AJAX kliens készítése ADO.NET Data Services-hez AJAXos klienst írunk, ahol egy táblába töltünk adatokat (kódbehúz legalább az onSuccess-nél)

22 IE8 Developer Tools ”Live Edit” Stílusok követése JS Debugging
CallStack JS Console JS Profiling

23 AJAX kliensünk teljesítményének elemzése IE8 Developer Tools-szal
Demó AJAX kliensünk teljesítményének elemzése IE8 Developer Tools-szal Megnézzük, hogy hogyan navigálhatók a hívásaink (call stack)... Hogyan lehet megnézni, mi mennyi ideig tart (módosítunk is a lekérdezés, emiatt) Majd ha ezt kivégeztük, megnézzük a live edit, debugging funckiókat, hogyan kezeli a css-t stb...

24 Összegzés Az előadás célja Útravalók
Vállalati adatok kinyitása a világ felé, oly módon, hogy tetszőleges platform számára elérhető és értelmezhető legyen Útravalók Használjunk Entity Framework-öt adatmodellként, az egyszerű adatkezelés érdekében ADO.NET Data Services-zel publikáljuk az adatainkat AtomPub formátumban, hogy mindenki értse

25 És a legfontosabb… NEM FÁJT!

26


Letölteni ppt "Vállalati adatok megnyitása a külvilág felé"

Hasonló előadás


Google Hirdetések