WCF RIA SERVICES
Andrej Tozon, Microsoft MVP
ANT Andrej Tozon s.p., Ljubljana
@andrejt | [email protected] | http://tozon.info/blog/
WCF Services
WCF Workflow Services
WCF Data Services
WCF RIA Services
WCF KAJ SERVICES?
WCF Services
WCF Workflow Services
WCF Data Services
WCF RIA Services
WCF KAJ SERVICES?
WCF Data Services
WCF KAJ SERVICES?
ADO.NET Data Services
WCF Data Services
WCF KAJ SERVICES?
Astoria
ADO.NET Data Services
WCF Data Services
WCF KAJ SERVICES?
Astoria
ADO.NET Data Services
WCF RIA Services
WCF KAJ SERVICES?
.NET RIA Services
WCF RIA Services
WCF KAJ SERVICES?
Alexandria
.NET RIA Services
WCF RIA Services
WCF RIA SERVICES - VIZIJA
• Poenostavitev razvoja večnivojskih
podatkovnih rešitev
– Abstrakcija komunikacijskega nivoja
– Večnivojsko potrjevanje veljavnosti podatkov
– Avtentikacija in avtorizacija
• Skalabilna arhitektura za zadoščanje potreb
širokem naboru poslovnih rešitev
• Uporaba obstoječih gradnikov in tehnologij
– Silverlight, EF/L2S, Linq, WCF [Soap/JSON/OData]
KOMUNIKACIJA
Odjemalec
[Silverlight]
Strežnik
[ASP.NET / WCF]
?
KOMUNIKACIJA
[WCF RIA Services]
Arhitektura -aplikacijska
Odjemalec Aplikacijski strežnik
Podatkovna
baza
PogledAplikacijska
logika
Podatkovni
nivoAplikacijska
logika
WCF RIA Services
Arhitektura in RIA Services
• Linq to Entities
• Linq to SQL
• Po meri
Odjemalec Aplikacijski strežnik
ModelDomenski
kontekstModel
Domenska
storitev
KJE JE TU WCF?
• DomainService na strežniku
• Dostopne točke se ustvarijo dinamično
– Privzeta je Binary [PoxBinaryEndpointFactory]
• Ostale točke [WCF RIA Services Toolkit]
– OData [ODataEndpointFactory]
– Soap/Xml [SoapXmlEndpointFactory]
– JSON [JsonEndpointFactory]
– Ostale / po meri
[DomainServiceEndpointFactory]
MOST MED DVEMA BREGOVOMA
• Generiranje programske kode
• Podvojevanje datotek (MyClass.Shared.cs)
[EnableClientAccess()]public class NTK10DomainService : LinqToEntitiesDomainService<DatabaseEntities>{…}
[Ignore()]public bool SomeLocalMethod(){…}
public partial class Speaker{
public string FullName{
get { return string.Format("{0} {1}", Name, LastName); }}
}
Vzpostavitev rešitve
Delo s podatki
• DomainContext, zavit v DomainDataSource
– Sortiranje
– Groupiranje
– Ostanjevanje
– Filtriranje
• CollectionViewSource (Silverlight)
– Sortiranje
– Grupiranje
– Filtriranje
Preverjanje veljavnosti podatkov
• Atributi na lastnostih entitet
– Required
– StringLength
– Range
– DataType
– RegularExpression
– Po meri (CustomValidator)
• Atributi na entitetah
– Po meri
Preverjanje veljavnosti podatkov
• Kje preverjati?
– Pri vnosu podatkov (upor. vmesnik)
– Na podatkovnem nosilcu (entiteta, odjemalec)
• Lastnosti
• Kot celota
– Na storitveni vstopni točki (entiteta, strežnik)
– Na poslovnem nivoju
– Ob vpisu v podatkovno bazo
Urejanje podatkov
Preverjanje veljavnosti podatkov
Avtentikacija in avtorizacija
• Način
– Forms Authentication
– Windows / Integrated Authentication
• Model je znan!
– ASP.NET Membership
• Uporabniki
• Vloge
• Profil
– Privzet ali po meri
Avtentikacija in avtorizacija
• Odjemalec
– WebContext.Authentication
– WebContect.User (IPrincipal)
• Strežnik
– [RequiresAuthentication] in [RequiresRole]
– ServiceContext.User
Avtentikacija in avtorizacija
• WCF RIA Services
– http://www.silverlight.net/getstarted/riaservices
• Seznam želja za naslednjo verzijo
– http://riaservices.mswish.net
• Code Gallery - primeri in razširitve
– http://code.msdn.microsoft.com/RiaServices
• WCF RIA Services Contrib
– http://riaservicescontrib.codeplex.com/
Viri
Vprašanja?
• Po predavanju boste na vaš elektronski naslov
prejeli vprašalnik o predavanju, ki ste ga ravnokar
poslušali.
• Vprašalniki bodo dostopni tudi preko profila na
spletnem portalu konference.
• Z izpolnjevanjem le tega pripomorete k izboljšanju
konference. Hvala!
Andrej Tozon
ANT Andrej Tozon s.p.
@andrejt
http://tozon.info/blog
Top Related