Selamlar ;
Asteriks demeyi daha cok isterdim ama kod adı Astoria olan yeni bir proje ile Microsoft yine ve yeniden karşımızda.. :)
Efendim bu nemi yapıyor diyorsunuz ? Şöyle diyeyim silverlight ile geliştirdiğiniz web uygulamanızın precompiled bir uri uzerinden cesitli kriterler dahilinde data serve edilmesini saglayan bir mekanizma.Var olan veri erişim mekanizmalarında (AJAX ı düşünmeyiniz) sayfa ilgili veri kontrolüne data bağlamak için herseferinde server'a post oluyor buda bir dünya zaman ve band kaybı olduğu için sıkıntı oluşturuyordu.Bunu onlemek uzere MS'in ADO'sunun architecture'larının başında gelen Pablo Castro ve ekibi bu projeyi gelistirmisler.Aslında kendileri de mekanizma da Entity Data Model uzerine yapilandirilmis bir durumda ki saniyorum ADO.NET 3.0'in yani Orcas in final surumunde bizimle birlikte olacak.Şu anda CTP'si bulunmakta ve http://www.microsoft.com/downloads/details.aspx?FamilyId=1B6F85BC-8933-4D0E-A639-934EF85ADCE1&displaylang=en adresinden indirebilirsiniz.Kanımca final sürümüyle cok farkı olmayacaktır.Bunu neye dayanarak solediğimi dusunuyor olabilirsiniz cevap olarak istenen seyin cok bariz bir şekilde ifade edilmesi diyebiliriz bence.Amac data'ya ulaşmak..Hummm nasıl pek tabi XML ile.E adres belli geriye sorgu kriterleri kalıyor.Sorgulara bir kaç ornek vermek gerekirse
http://myserver/data.svc/Customers Customers tablosunda ki tüm verileri getirecek.
http://myserver/data.svc/Customers[ALFKI] basit bir where cümlesi .
http://myserver/data.svc/Customers[ALFKI]/Orders Orders tablosu ile ilişki kurduk :) İçinizden o... dediğinizi duyar gibiyim ama öle.
ve asıl enteresan olanı http://myserver/data.svc/Customers?$skip=30&$take=10 ile de paging yapabiliyor olmanız.inanilmaz değil mi ?
Sonuç ise bildiğiniz XML ;
DataService xml:base="http://myserver/data.svc">
<Customers>
<Customer uri="Customers[ALFKI]">
<CustomerID>ALFKI</CustomerID>
<CompanyName>Alfreds Futterkiste</CompanyName>
<ContactName>Maria Anders</ContactName>
<ContactTitle>Sales Representative</ContactTitle>
<Address>Obere Str. 57</Address>
<City>Berlin</City>
<Region />
<PostalCode>12209</PostalCode>
<Country>Germany</Country>
<Phone>030-0074321</Phone>
<Fax>030-0076545</Fax>
<Orders href="Customers[ALFKI]/Orders" />
</Customer>
</Customers>
</DataService>
Daha önceden flash'cı bir arkadaşım flash içinden IIS üzerinde ki bir XML Web Servisine ulaşmak istiyordu bunun için Flourine (http://fluorine.thesilentgroup.com/) kullanmıştım.Ama baya bi meşakkatli olmusdu.Astoria'nin vadettiklerine bakacak olursak oldukca basit hos bir mekanizma bizi bekliyor olacak..Dusunun sadece veri..
http://astoria.mslivelabs.com/gettingStarted.aspx linkinde get Started var.Burayı incelemenizi öneriyorum.
İyi çalışmalar.