Complete content can be found at
http://cid-511766c2b5c5bdd3.skydrive.live.com/browse.aspx/DotNet%20Presentations/NH%20Code%20Camp%2020100605/Silverlight%20for%20Business?view=details
29. AJAX, especially with tools like jQuery and the related extensions also offer RIA experiences
30. Linux client support limited to what is available in MoonlightWhy Silverlight? http://blog.dotnetgator.com 3 Silverlight is a technology for creating cross-platform .Net applications for the browser* Cons Pros
31. Business Application Goals Get the data Interacting with the data Displaying the data in a way that adds meaning Sharing the data Secure the data http://blog.dotnetgator.com 4
32. Consuming & Interacting With Data Basic Web Service Access (WCF/ASMX) Code “sharing” via proxies Business logic either through cut & paste or Prism Project Linker http://blog.dotnetgator.com 5 DEMO
33. Enhancing Data Access With WCF RIA Services http://blog.dotnetgator.com 6 - Connects the Client and Server Projects- Allows “flow-through” queries and CRUD- Shared business logic via metadata & projection- Adding RIA Services - Convention and Configuration - Query, Insert, Update, Delete attributes - Released 5/18/2010 DEMO Services Application Presentation Logic Data Access Layer App Logic Network DB Source: Nikhil Kothari
34. Adding Display Value http://blog.dotnetgator.com 7 DEMO Charting Bing Maps Silverlight Control & API Printing
35. Authentication & Authorization http://blog.dotnetgator.com 8 NOTE: KEEP YOUR SECRETS BEHIND YOUR SERVICE BOUNDARY Use HTTPS to transmit sensitive information DEMO
36. Going Further http://blog.dotnetgator.com 9 Silverlight.Net Silverlight Toolkit Bing Maps API Blog – Nikhil Kothari Blog – Brad Abrams Blog – Christian Schormann ONLINE Silverlight TV MIX Videos MSDev Perspectives on Flash & Silverlight VIDEOS Pro Silverlight 3 in C# (Matthew MacDonald) Silverlight Recipes (Rob Cameron) WPF Control Development (Podila) Next Generation Business Intelligence Software With Silverlight 3 (Czernicki) BOOKS http://dotnet.uservoice.com/ - Suggestions http://www.microsoft.com/design/toolbox - Free Online Training OTHER
* Source – Pro Silverlight 3 in C#, Matthew MacDonald, APress 2009** Source – RIAStats.com*** HTML5:"Will HTML 5 make RIA technologies such as Adobe Flash/Flex and Microsoft Silverlight obsolete? For at least the next five years, the answer is a definite 'no,'" reads Hammond's executive summary. "Inconsistent implementations of the draft HTML 5 specification and immature tooling make building HTML 5 apps that work consistently across browsers and operating systems a real challenge." - Forrester author and principal analyst Jeffrey Hammond When W3C itself projects 2022 (no, that's not a typo) as the earliest date that a final HTML 5 specification can be completed and published, some are actually saying that date is optimistic.The next stage for HTML 5 adoption is the first "candidate recommendation," set for 2012...At that time, Hammond foresees a process not unlike network appliance vendors hawking "802.11n" or "pre-11n" wares prior to that standard's final adoption last October.In 2015, we'll see pretty consistent support, even though there won't be a final standard. So I don't think it's dead, but I think you need to differentiate between a 'good enough' implementation and a 'fully compliant' standard.""The folks that benefit most from a new standard are the folks that don't necessarily have a commanding position in the existing standard," Hammond responded. ===========================================================================================SOURCE: http://www.betanews.com/article/Actual-Analysis-Is-HTML-5-already-outmoded/1273009131===========================================================================================Ian Hickson, editor of the HTML5 specification, expects the specification to reach the W3C Candidate Recommendation stage during 2012, and W3C Recommendation in the year 2022 or later.[8] However, many parts of the specification are stable and may be implemented in products:Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today (e.g. <canvas>).– WHAT Working Group, When will HTML5 be finished?[8], FAQ===========================================================================================SOURCE: http://en.wikipedia.org/wiki/HTML5===========================================================================================
Get the data WCF, then RIADisplay the data Charting, mapping, mixing it with other sourcesSharing the data Local saving, printing, excelSecure the data Using RIA Services A&A
Plain old WCF Business objects “shared” via proxies.Net 4, there is a story for the .Net RT consuming “simple” SL classes (lowest-common-denominator business class) Validation code has to be repeated on both sides (Prism project linker, copy & paste.)Async completion handling Authentication would be web-service calls to ASP.Net authentication web service Other issues – “cluttering” of web service methods – pagination, filtered results, etc.Show creating WCF web serviceShow Data Sources windowShow Grid – Copy/Paste to Excel (yippee)
Replace the graphic (or credit it to Nikhil)RIA Services Tool to help write n-tier applications on the .Net / Silverlight platforms where there is a desire to simplify data access and reuse business logic across tiers Projects are “linked” – making changes on the server makes changes to the generated code that is produced on the client Metadata (validation) is “projected” into the client Shared code via convention (.shared file)Async is handled internally Show Create domain service Show “basic” g.cs fileShow data sources window Show Paging Show Updating Show Validation – Exchange of metadata – attributed and custom (show g.cs and shared files)
Charting Product Page Add a chart item in the appropriate square, set the title Add a LineSeries element to the chart for Price Set the ItemsSource to bing to the dataSource, path = dataDependentvaluePath = ListPrice (Y Axis)IndependentValuePath = Name Add a LineSeries element to the chart for Weight Set the ItemsSource to bing to the dataSource, path = dataDependentvaluePath = Weight (Y Axis)IndependentValuePath = NameMapping Customer Page Drop in Bing Maps Map control into UI section (add key value) Hook address data fetched event to set visibility of map and/or to geocode the address with the helper classPrinting Add the button Hook the completed, page events In page event, return false for more pages In page event, build the display element out of bitmaps GO!
HTTPS!WHAT ABOUT SYSTEM/CRYPTO?Create another domain service for authentication Implement IAuthentication<IUser>Hooking up in the client MainPage.XAML, bind button panel DataCOntext to WebContext Bind button visibility to WebContext(inherited).User (needs a User to visibilityconverter) Note that buttons are now not displayed until user logs in Note that the login password validates (breakpoint)? against the server-side