SlideShare una empresa de Scribd logo
1 de 35
Urmeaza Manipularea datelor, conectivitate si performanta in Silverlight 2 CE LANSAM NOU? www.microsoft.ro/web ,[object Object]
 noutati, tehnologie, oportunitati de business, evenimente;
Check it out!VREI SA FII MEREU LA CURENT CU TOT CE FACEM? ,[object Object]
 daca esti dezvoltator alege: MSDN Newsletter
 daca esti profesionist in infrastructura IT alege: TechNet Newsletter
 daca esti partener Microsoft alege: Partners Newsletter
Blog-uri, comunitati si multe alte resurse:http://www.microsoft.com/romania/web/resurse.html
Agenda Web Days  (5 martie) 10:00 – 11:00 Internet Explorer 8 11:00 – 12:00 Introducere în Silverlight 2 13:00 – 14:00 Manipularea datelor, conectivitate și performanță în Silverlight 2 14:00 – 15:00 Stări și șabloane de controale în practică 15:00 – 16:00 Dezvoltarea unei aplicații RIA cu Silverlight 16:00 – 17:00 Introducere în Silverlight Streaming Acceseaza agenda evenimentului in detaliu pe  www.microsoft.ro/webdays
Manipularea datelor, conectivitate si performanta in Silverlight 2 Diana Tataran Software Developer Océ Software
Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight
Manipularea datelor Transform Prepare/Shape class SkiCostume {    public string Image {get;set}    public string Model {get;set] }
Manipularea datelor Modelarea datelor ,[object Object]
WSDL/SOAP – serializarea serviciilor web
JSON - DataContractJSONSerializer
XML
Manipularea fisierelor XML
XmlReader
XmlWriter ,[object Object]
Manipularea datelor Data Binding
Manipularea datelor Sursele de date Pot sa lege elementele UI la orice proprietate publică a unui obiect CLR DataContext: reprezinta proprietatea unui FrameworkElement care defineşte sursa de date pentru acel element şi pentru toate elementele din sub-arborele respectiv Binding.Source: Permite o modalitate de a specifica sursele de date per binding
Manipularea datelor Modalitati de legare a surselor de date cu elemente din UI One Way Actualizarile sursei de date sunt reflectate in UI Sursele de date implementeaza pentru notificarea schimbarilor INotifyPropertyChanged Two Way Modificarile la nivel de UI conduc la actualizarea obiectului care joaca rolul de sursa de date One Time Actualizeaza controlul tinta cu sursa de date o singura data, la crearea legaturii
Manipularea datelor Conversia datelor De ce este nevoie de convertoare? Convertoarele pot fi setate pe orice binding. Fiecare convertor este personalizat in functie de scenariu	 Implementeaza IValueConveter  Se poate utiliza in {Binding ..}   One Way / Two Way  From source = Convert  From target = ConvertBack
DataTemplate Manipularea datelor Data Templates class SkiCostume {   string Image {get;set}   string Model {get;set} } <DataTemplate x:Key="skiCostumeTemplate">                     <Border BorderBrush="Blue" BorderThickness="2" Background="LightGray"                         Margin="10" Padding="15,15,15,5">                         <StackPanel>                             <Image HorizontalAlignment="Center" Source="{Binding Path=Image}" Height="300" Width="120"/>                             <Border HorizontalAlignment="Center" BorderBrush="Navy"                                 Background="#DDF" BorderThickness="1" Margin="10" Padding="3">                              <TextBlock FontSize="18" Text="{Binding Path=Model}" />                             </Border>                         </StackPanel>                     </Border>                 </DataTemplate>
Manipularea datelor Validarea datelor Rutarea evenimentului BindingValidationError prin intermediul exceptiilor din Converter si/sau PropertySetter Permite  Mode=TwoWay NotifyOnValidationError=true ValidatesOnExceptions=true
demo  Data Binding
Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight
Conectivitate Comunicarea prin HTTP Silverlight permite comunicarea HTTP / HTTPS cu servicii Web gazduite atat in interiorul cat si in afara domeniului care gazduieste aplicatia Silverlight Foloseste stiva de networking a browser-ului Mosteneste caching-ul, suport pentru proxy, autentificarea etc Mosteneste insa si limitarile acesteia 	(de ex.: numarul de conexiuni, care in mod implicit este 2) Toate API-urile Silverlight de networking sunt asincrone. 	=> Nu poate bloca thread-ul UI. API-urile Silverlight: WebClient HttpWebRequest WebServices  Sockets
Conectivitate Conectivitate cu JavaScript Conectivitate cu AJAX obiectul XMLHttpRequest in JavaScript  folosind clasele JSON Proxy in ASP.NET AJAX
Conectivitate Comunicarea prin HTTP Clasa WebClient Asigura acces asincron la toate asset-urile retelei  Inclusiv cross-domain; trebuie stabilit un policy file pentru comunicarea cross-domain  Este prevazuta cu metode de download de date dintr-o resursa / upload de date intr-o resursa (tipurile acceptate sunt Stream si/sau string ) Uri myURI = new Uri(“http://localhost:9001/DateHandler.ashx”); WebClient client = new System.Net.WebClient();           client.DownloadStringCompleted+=new        	DownloadStringCompletedEventHandler(client_DownloadStringCompleted); client.DownloadStringAsync(myURI);
demo  Conectivitate cu JavaScript
Conectivitate Consumarea unui serviciu web WCF Serviciile sunt definite prin intermediul contractelor WCF Se utilizeaza Visual Studio pentru a crea un serviciu-proxy (bazat pe HttpWebRequesc / HttpWebResponse) Silverlight foloseste proxy-ul creat in mod asincron
demo  Consumarea unui serviciuweb WCF
Conectivitate Consumarea unui serviciu web SOAP Serviciile web trebuie sa expuna un fişier WSDL, iar pe server ar trebui sa existe fisierele: crossdomain.xml clientaccesspolicy.xml 	configurate corect si plasate coerspunzator Se utilizeaza Visual Studio pentru a crea un serviciu-proxy (bazat pe HttpWebRequesc / HttpWebResponse) Silverlight foloseste proxy-ul creat in mod asincron
demo  Consumarea unui serviciuweb SOAP
Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight

Más contenido relacionado

Destacado

Power Point 09 10 Formigues
Power Point 09 10 FormiguesPower Point 09 10 Formigues
Power Point 09 10 FormiguesCucaferatona
 
Magazine Cover Evaluation
Magazine Cover EvaluationMagazine Cover Evaluation
Magazine Cover Evaluationguest6d3c71
 
Acutstep Sleeve Singles
Acutstep Sleeve SinglesAcutstep Sleeve Singles
Acutstep Sleeve Singlesjbarnhouse
 
Electric Blue: Art and poem by Shelley M. House
Electric Blue: Art and poem by Shelley M. HouseElectric Blue: Art and poem by Shelley M. House
Electric Blue: Art and poem by Shelley M. HouseShelley House
 
Global Classroom 2011-12: Looking Forwards, Looking Back
Global Classroom 2011-12: Looking Forwards, Looking BackGlobal Classroom 2011-12: Looking Forwards, Looking Back
Global Classroom 2011-12: Looking Forwards, Looking BackMichael Graffin
 
School Mandates and How They are Paid
School Mandates and How They are PaidSchool Mandates and How They are Paid
School Mandates and How They are PaidUnshackle Upstate
 
Hardware i Software
Hardware i SoftwareHardware i Software
Hardware i Softwarekaiser1616
 
Farzana More On The World
Farzana More On The WorldFarzana More On The World
Farzana More On The Worldnurfarzana
 
Reunio Pares Tortugues
Reunio Pares TortuguesReunio Pares Tortugues
Reunio Pares TortuguesCucaferatona
 
Revenues Are Shrinking but Spending is Not - - Presentation from CBC
Revenues Are Shrinking but Spending is Not - - Presentation from CBCRevenues Are Shrinking but Spending is Not - - Presentation from CBC
Revenues Are Shrinking but Spending is Not - - Presentation from CBCUnshackle Upstate
 
Let NY Work: A Common Agenda for the Common Good
Let NY Work: A Common Agenda for the Common GoodLet NY Work: A Common Agenda for the Common Good
Let NY Work: A Common Agenda for the Common GoodUnshackle Upstate
 
ISEA2011 Istanbul keynote: Time to Live
ISEA2011 Istanbul keynote: Time to LiveISEA2011 Istanbul keynote: Time to Live
ISEA2011 Istanbul keynote: Time to LiveSean Cubitt
 

Destacado (16)

Power Point 09 10 Formigues
Power Point 09 10 FormiguesPower Point 09 10 Formigues
Power Point 09 10 Formigues
 
Magazine Cover Evaluation
Magazine Cover EvaluationMagazine Cover Evaluation
Magazine Cover Evaluation
 
Acutstep Sleeve Singles
Acutstep Sleeve SinglesAcutstep Sleeve Singles
Acutstep Sleeve Singles
 
Electric Blue: Art and poem by Shelley M. House
Electric Blue: Art and poem by Shelley M. HouseElectric Blue: Art and poem by Shelley M. House
Electric Blue: Art and poem by Shelley M. House
 
Hpm8technology
Hpm8technologyHpm8technology
Hpm8technology
 
Els Deus De L’Olimp
Els Deus De L’OlimpEls Deus De L’Olimp
Els Deus De L’Olimp
 
Global Classroom 2011-12: Looking Forwards, Looking Back
Global Classroom 2011-12: Looking Forwards, Looking BackGlobal Classroom 2011-12: Looking Forwards, Looking Back
Global Classroom 2011-12: Looking Forwards, Looking Back
 
School Mandates and How They are Paid
School Mandates and How They are PaidSchool Mandates and How They are Paid
School Mandates and How They are Paid
 
Hardware i Software
Hardware i SoftwareHardware i Software
Hardware i Software
 
Farzana More On The World
Farzana More On The WorldFarzana More On The World
Farzana More On The World
 
Reunio Pares Tortugues
Reunio Pares TortuguesReunio Pares Tortugues
Reunio Pares Tortugues
 
Revenues Are Shrinking but Spending is Not - - Presentation from CBC
Revenues Are Shrinking but Spending is Not - - Presentation from CBCRevenues Are Shrinking but Spending is Not - - Presentation from CBC
Revenues Are Shrinking but Spending is Not - - Presentation from CBC
 
Let NY Work: A Common Agenda for the Common Good
Let NY Work: A Common Agenda for the Common GoodLet NY Work: A Common Agenda for the Common Good
Let NY Work: A Common Agenda for the Common Good
 
Chistesgraficos
ChistesgraficosChistesgraficos
Chistesgraficos
 
ISEA2011 Istanbul keynote: Time to Live
ISEA2011 Istanbul keynote: Time to LiveISEA2011 Istanbul keynote: Time to Live
ISEA2011 Istanbul keynote: Time to Live
 
Ryopeko kosenconf14
Ryopeko kosenconf14Ryopeko kosenconf14
Ryopeko kosenconf14
 

Similar a [Web Days] Manipularea Datelor, Conectivitate Si Performanta In Silverlight 2

[Web Days] Introducere In Silverlight 2
[Web Days] Introducere In Silverlight 2[Web Days] Introducere In Silverlight 2
[Web Days] Introducere In Silverlight 2Diana Tataran
 
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5Sabin Buraga
 
Impactul saa s in institutiile publice – andreea sandu ap1
Impactul saa s in institutiile publice – andreea sandu ap1Impactul saa s in institutiile publice – andreea sandu ap1
Impactul saa s in institutiile publice – andreea sandu ap1silviu_cojocaru
 
Programare Web - De la CGI la servere de aplicatii
Programare Web - De la CGI la servere de aplicatiiProgramare Web - De la CGI la servere de aplicatii
Programare Web - De la CGI la servere de aplicatiiSabin Buraga
 
Noutăţi în ASP.NET MVC 2
Noutăţi în ASP.NET MVC 2Noutăţi în ASP.NET MVC 2
Noutăţi în ASP.NET MVC 2Enea Gabriel
 
Aplicații Firefox OS cu HTML5
Aplicații Firefox OS cu HTML5Aplicații Firefox OS cu HTML5
Aplicații Firefox OS cu HTML5Sabin Buraga
 
Cloud computing caracteristici si modele v greavu
Cloud computing caracteristici si modele   v greavuCloud computing caracteristici si modele   v greavu
Cloud computing caracteristici si modele v greavuMalairauValeria
 
Dezvoltare Web Folosind Java
Dezvoltare Web Folosind JavaDezvoltare Web Folosind Java
Dezvoltare Web Folosind Javacolaru
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_romcroitor
 
Fii linked data
Fii linked dataFii linked data
Fii linked datateodora001
 
Fii linked data
Fii linked dataFii linked data
Fii linked datateodora001
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....Sabin Buraga
 
Kickstart Project: Android+Restlet+Hibernate+PostgreSQL
Kickstart Project: Android+Restlet+Hibernate+PostgreSQLKickstart Project: Android+Restlet+Hibernate+PostgreSQL
Kickstart Project: Android+Restlet+Hibernate+PostgreSQLVlad Petre
 
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5Sabin Buraga
 

Similar a [Web Days] Manipularea Datelor, Conectivitate Si Performanta In Silverlight 2 (20)

[Web Days] Introducere In Silverlight 2
[Web Days] Introducere In Silverlight 2[Web Days] Introducere In Silverlight 2
[Web Days] Introducere In Silverlight 2
 
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
 
Fii linked data
Fii linked dataFii linked data
Fii linked data
 
Fii linked data
Fii linked dataFii linked data
Fii linked data
 
HTML5? HTML5!
HTML5? HTML5!HTML5? HTML5!
HTML5? HTML5!
 
Impactul saa s in institutiile publice – andreea sandu ap1
Impactul saa s in institutiile publice – andreea sandu ap1Impactul saa s in institutiile publice – andreea sandu ap1
Impactul saa s in institutiile publice – andreea sandu ap1
 
Programare Web - De la CGI la servere de aplicatii
Programare Web - De la CGI la servere de aplicatiiProgramare Web - De la CGI la servere de aplicatii
Programare Web - De la CGI la servere de aplicatii
 
Noutăţi în ASP.NET MVC 2
Noutăţi în ASP.NET MVC 2Noutăţi în ASP.NET MVC 2
Noutăţi în ASP.NET MVC 2
 
Aplicații Firefox OS cu HTML5
Aplicații Firefox OS cu HTML5Aplicații Firefox OS cu HTML5
Aplicații Firefox OS cu HTML5
 
Cloud computing caracteristici si modele v greavu
Cloud computing caracteristici si modele   v greavuCloud computing caracteristici si modele   v greavu
Cloud computing caracteristici si modele v greavu
 
Dezvoltare Web Folosind Java
Dezvoltare Web Folosind JavaDezvoltare Web Folosind Java
Dezvoltare Web Folosind Java
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_ro
 
Fii linked data
Fii linked dataFii linked data
Fii linked data
 
Fii linked data
Fii linked dataFii linked data
Fii linked data
 
Fii linked data
Fii linked dataFii linked data
Fii linked data
 
Licenta web aplicatie.pptx
Licenta web aplicatie.pptxLicenta web aplicatie.pptx
Licenta web aplicatie.pptx
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
 
Kickstart Project: Android+Restlet+Hibernate+PostgreSQL
Kickstart Project: Android+Restlet+Hibernate+PostgreSQLKickstart Project: Android+Restlet+Hibernate+PostgreSQL
Kickstart Project: Android+Restlet+Hibernate+PostgreSQL
 
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
 
Algoritm de crawling
Algoritm de crawlingAlgoritm de crawling
Algoritm de crawling
 

[Web Days] Manipularea Datelor, Conectivitate Si Performanta In Silverlight 2

  • 1.
  • 2. noutati, tehnologie, oportunitati de business, evenimente;
  • 3.
  • 4. daca esti dezvoltator alege: MSDN Newsletter
  • 5. daca esti profesionist in infrastructura IT alege: TechNet Newsletter
  • 6. daca esti partener Microsoft alege: Partners Newsletter
  • 7. Blog-uri, comunitati si multe alte resurse:http://www.microsoft.com/romania/web/resurse.html
  • 8. Agenda Web Days (5 martie) 10:00 – 11:00 Internet Explorer 8 11:00 – 12:00 Introducere în Silverlight 2 13:00 – 14:00 Manipularea datelor, conectivitate și performanță în Silverlight 2 14:00 – 15:00 Stări și șabloane de controale în practică 15:00 – 16:00 Dezvoltarea unei aplicații RIA cu Silverlight 16:00 – 17:00 Introducere în Silverlight Streaming Acceseaza agenda evenimentului in detaliu pe www.microsoft.ro/webdays
  • 9. Manipularea datelor, conectivitate si performanta in Silverlight 2 Diana Tataran Software Developer Océ Software
  • 10. Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight
  • 11. Manipularea datelor Transform Prepare/Shape class SkiCostume { public string Image {get;set} public string Model {get;set] }
  • 12.
  • 13. WSDL/SOAP – serializarea serviciilor web
  • 15. XML
  • 18.
  • 20. Manipularea datelor Sursele de date Pot sa lege elementele UI la orice proprietate publică a unui obiect CLR DataContext: reprezinta proprietatea unui FrameworkElement care defineşte sursa de date pentru acel element şi pentru toate elementele din sub-arborele respectiv Binding.Source: Permite o modalitate de a specifica sursele de date per binding
  • 21. Manipularea datelor Modalitati de legare a surselor de date cu elemente din UI One Way Actualizarile sursei de date sunt reflectate in UI Sursele de date implementeaza pentru notificarea schimbarilor INotifyPropertyChanged Two Way Modificarile la nivel de UI conduc la actualizarea obiectului care joaca rolul de sursa de date One Time Actualizeaza controlul tinta cu sursa de date o singura data, la crearea legaturii
  • 22. Manipularea datelor Conversia datelor De ce este nevoie de convertoare? Convertoarele pot fi setate pe orice binding. Fiecare convertor este personalizat in functie de scenariu Implementeaza IValueConveter Se poate utiliza in {Binding ..} One Way / Two Way From source = Convert From target = ConvertBack
  • 23. DataTemplate Manipularea datelor Data Templates class SkiCostume { string Image {get;set} string Model {get;set} } <DataTemplate x:Key="skiCostumeTemplate"> <Border BorderBrush="Blue" BorderThickness="2" Background="LightGray" Margin="10" Padding="15,15,15,5"> <StackPanel> <Image HorizontalAlignment="Center" Source="{Binding Path=Image}" Height="300" Width="120"/> <Border HorizontalAlignment="Center" BorderBrush="Navy" Background="#DDF" BorderThickness="1" Margin="10" Padding="3"> <TextBlock FontSize="18" Text="{Binding Path=Model}" /> </Border> </StackPanel> </Border> </DataTemplate>
  • 24. Manipularea datelor Validarea datelor Rutarea evenimentului BindingValidationError prin intermediul exceptiilor din Converter si/sau PropertySetter Permite Mode=TwoWay NotifyOnValidationError=true ValidatesOnExceptions=true
  • 25. demo Data Binding
  • 26. Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight
  • 27. Conectivitate Comunicarea prin HTTP Silverlight permite comunicarea HTTP / HTTPS cu servicii Web gazduite atat in interiorul cat si in afara domeniului care gazduieste aplicatia Silverlight Foloseste stiva de networking a browser-ului Mosteneste caching-ul, suport pentru proxy, autentificarea etc Mosteneste insa si limitarile acesteia (de ex.: numarul de conexiuni, care in mod implicit este 2) Toate API-urile Silverlight de networking sunt asincrone. => Nu poate bloca thread-ul UI. API-urile Silverlight: WebClient HttpWebRequest WebServices Sockets
  • 28. Conectivitate Conectivitate cu JavaScript Conectivitate cu AJAX obiectul XMLHttpRequest in JavaScript folosind clasele JSON Proxy in ASP.NET AJAX
  • 29. Conectivitate Comunicarea prin HTTP Clasa WebClient Asigura acces asincron la toate asset-urile retelei Inclusiv cross-domain; trebuie stabilit un policy file pentru comunicarea cross-domain Este prevazuta cu metode de download de date dintr-o resursa / upload de date intr-o resursa (tipurile acceptate sunt Stream si/sau string ) Uri myURI = new Uri(“http://localhost:9001/DateHandler.ashx”); WebClient client = new System.Net.WebClient(); client.DownloadStringCompleted+=new DownloadStringCompletedEventHandler(client_DownloadStringCompleted); client.DownloadStringAsync(myURI);
  • 30. demo Conectivitate cu JavaScript
  • 31. Conectivitate Consumarea unui serviciu web WCF Serviciile sunt definite prin intermediul contractelor WCF Se utilizeaza Visual Studio pentru a crea un serviciu-proxy (bazat pe HttpWebRequesc / HttpWebResponse) Silverlight foloseste proxy-ul creat in mod asincron
  • 32. demo Consumarea unui serviciuweb WCF
  • 33. Conectivitate Consumarea unui serviciu web SOAP Serviciile web trebuie sa expuna un fişier WSDL, iar pe server ar trebui sa existe fisierele: crossdomain.xml clientaccesspolicy.xml configurate corect si plasate coerspunzator Se utilizeaza Visual Studio pentru a crea un serviciu-proxy (bazat pe HttpWebRequesc / HttpWebResponse) Silverlight foloseste proxy-ul creat in mod asincron
  • 34. demo Consumarea unui serviciuweb SOAP
  • 35. Cuprins Manipularea datelor Popularea elementelor din UI cu date Validarea si conversia datelor Conectivitate Comunicarea prin HTTP in Silverlight Consumarea unui serviciu Web WCF Consumarea unui serviciu Web SOAP Performanta Ponturi pentru o performanta mai buna SEO pentru aplicatii Silverlight
  • 36. Performanta Ponturi pentru o performanta mai buna Testati aplicatia pe mai multe platforme si browsere Evitati utilizarea Windowless Mode Utilizati ori de cate ori este posibil proprietatea Visibility in loc de Opacity Spargeti pachetele mari de aplicatii Impartiti activitatile care solicita mai mult procesorul in activitati mai mici Nu folositi proprietatile Width si Height cu obiecte de tip MediaElement Utilizati BackgroundWorker
  • 37. Performanta SEO pentru aplicatii Silverlight Pattern-uri pentru dezvoltarea de aplicatii Silverlight indexabile Combinati HTML cu continut Silverlight Utilizati HTML Bridge pentru a genera conţinut dinamic Silverlight
  • 38. Performanta SEO pentru aplicatii Silverlight De luat in considerare: Comportamentul paginilor Web cu continut Silverlight in diverse configuratii (de ex. Opera sau Windows 98), care nu sunt suportate de Silverlight Conportamentul paginillor Web in cazul clientilor care folosesc programe din categoria screen reader sau narrators Conportamentul paginillor Web in cazul clientilor care folosesc browsere care nu pot sa execute scripturi (Lynx)
  • 39. Performanta SEO pentru aplicatii Silverlight Utilizarea unui titlu de pagina cat mai sugestiv Adaugarea de description metada <head> <meta name="description" content=“Prima mea aplicatie Silverlight" > ... </head>
  • 40. Performanta SEO pentru aplicatii Silverlight Utilizarea <object>
  • 41. Performanta SEO pentru aplicatii Silverlight Specificarea de continut Silverlight alternativ
  • 42. Performanta SEO pentru aplicatii Silverlight Utilizaţi createObject atunci când se foloseste Silverlight.js Avantaje: Inlocuirea HTML-ului din elementul-parinte (de ex. div) inlatura orice alte elemente din acel element-parinte De multe ori motoarele de cautare analizeaza si indexeaza tag-urile HTML inainte de rularea scripturilor si modificarea HTML DOM-ului. Testarea experientei utilizator mai putin bogate (down-level experiences)
  • 43.
  • 44. Partners Portal- portalul de Parteneri localizat in limba romana: https://partner.microsoft.com/romania/partner
  • 45. Innovate On - portalul unde iti poti inregistra si pre-testa solutia dar si accesa numeroase resurse tehnice si de training: www.innovateon.com
  • 46.
  • 47.
  • 49.
  • 50. Microsoft Action Pack Web Kit– pentru agentiile web si firmele dezvoltatoare pe internet: https://partner.microsoft.com/romania/40013779
  • 51. Empower – licente, unelte de dezvoltare si suport tehnic pentru firmele software inca la inceput de drum: https://partner.microsoft.com/romania/program/managemembership/empowerprogram
  • 52.