Course at a glance
Included in these subscriptions:
- Dev & IT Pro Video
- Dev & IT Pro Power Pack
Release date | 6/20/2008 | |
Level | Intermediate | |
Runtime | 10h 50m | |
Closed captioning | N/A | |
Transcript | N/A | |
eBooks / courseware | N/A | |
Hands-on labs | N/A | |
Sample code | Included | |
Exams | Included | |
Platform | Internet Explorer Only |
Course description
In this course, you will learn about Microsoft Silverlight, the new cross-browser, cross-platform, and cross-device plug-in that helps you deliver rich interactive Web applications. You will see what Silverlight 1.0 plug-in was designed for, and how 2 takes Silverlight to the next level. You will learn how the coding of a Web page using Silverlight 2 works with .NET, AJAX and other Web-based applications.
Meet the expert
Dino Esposito is a sought-after trainer and consultant specializing in Microsoft .NET technologies. He is the author of several books for developers, including ASP.NET titles for Microsoft Press. He is also a frequent speaker at industry events worldwide and a columnist for MSDN Magazine.
Course outline
Module 1
Why Use Silverlight? (35:58)
- Introduction (04:23)
- Richer Web Experience (01:42)
- What About AJAX (00:49)
- Limits of Web UI (02:12)
- Evolution of Web UI (05:30)
- Plug-ins (00:18)
- Enter Silverlight (04:59)
- Objectives - Silverlight 1.0 (02:02)
- Objectives - Silverlight 2 (02:11)
- Silverlight v. AJAX (05:13)
- Silverlight v. Smart Client (02:15)
- Silverlight vs XBAP (03:47)
- Summary (00:30)
First Look at Silverlight (40:28)
- Introduction (00:35)
- What"s a Silverlight App? (05:01)
- Cross-platform (02:42)
- The Silverlight Plug-in (02:09)
- object type (04:05)
- Silverlight 1 JavaScript (03:54)
- Silverlight Host Function (00:50)
- CreateSilverlightHost() (04:14)
- Silverlight Control (01:19)
- Plug-in Properties (01:55)
- Plug-in Events (01:39)
- Make Silverlight Classes (04:33)
- Demo: Silverlight App (06:49)
- Summary (00:36)
Module 2
Silverlight App Mechanics (31:07)
- Introduction (00:39)
- Inside a Silverlight App (03:33)
- Plug-in Architecture (02:24)
- What is XAML? (02:11)
- XAML in Action (02:30)
- Downloading XAML (04:50)
- Windowed v. Windowless (02:44)
- XAML Object Model (03:01)
- Ref. XAML Elements (01:13)
- x:Class Attribute (01:36)
- Dynam Gen XAML (01:27)
- Demo: Linking the Plug-in (04:35)
- Summary (00:18)
XAP Packages (25:04)
- Introduction (00:30)
- From XAML to XAP (02:13)
- XAP Packages (04:51)
- Inside XAP (02:18)
- XAP on the Client (03:31)
- Manifest (03:36)
- Downloaded Files (01:19)
- Instancing (02:24)
- On-Demand XAML (02:09)
- On-Demand Assemblies (01:48)
- Summary (00:20)
On-Demand and XML (20:59)
- Introduction (00:35)
- Demo: OnDemand (03:58)
- Demo: Download Event (03:25)
- Demo: Add - Remove Stuff (04:42)
- Downloader Class (03:24)
- Downloader Class Code (03:43)
- Rerunning the Sample App (00:51)
- Summary (00:17)
Accessing Page DOM (23:33)
- Introduction (00:34)
- Interop Layer (02:26)
- Accessing Page DOM (03:03)
- Updating Page DOM (01:00)
- Window Object (01:23)
- CreateInstance (01:12)
- Demo: Page DOM (04:51)
- Demo: Change Title (01:46)
- Demo: JavaScript Alert (01:03)
- Demo: Query String (01:26)
- HTML / C# Interaction (01:31)
- Demo: Random Number C# (02:49)
- Summary (00:23)
Module 3
Using Silverlight from DOM (22:07)
- Introduction (00:35)
- DOM-to-Silverlight (02:25)
- Invoke C# from JS (02:42)
- Access the XAML Tree (01:43)
- Scriptable Members (05:06)
- Scriptable - Creatable (04:35)
- OrderFx and Order (04:31)
- Summary (00:27)
Essential WPF (28:09)
- Introduction (00:36)
- WPF at a Glance (02:16)
- WPF Applications (02:10)
- Silverlight Prog Model (01:50)
- Silverlight WPF App (02:55)
- WPF UI Framework (01:08)
- Layout Manager (01:32)
- Grid (01:44)
- StackPanel (01:08)
- Canvas (01:55)
- Attached Properties (03:54)
- WPF Silverlight Controls (01:17)
- Demo: Controls (04:07)
- CheckBox & Buttons (01:08)
- Summary (00:22)
Controls and Binding (47:49)
- Introduction (00:43)
- Silverlight Controls (02:25)
- Styling Controls (04:39)
- Control Templates (05:56)
- Demo: Buttons (02:38)
- Buttons in StackPanel (02:58)
- ControlTemplate Block (03:03)
- Resources (04:39)
- Simple Data Binding (05:38)
- DataContext (07:49)
- Data Binding Modes (01:30)
- Binding to a Collection (05:16)
- Summary (00:28)
Module 4
LINQ and Silverlight (26:17)
- Introduction (00:43)
- In-Memory Data (02:30)
- LINQ at a Glance (04:23)
- LINQ in Pseudo-code (01:23)
- Query-able Types (03:09)
- IQueryable (01:50)
- Flavors of LINQ (01:09)
- LINQ Syntax (03:21)
- LINQ to Objects (02:42)
- SilverBCL (04:41)
- Summary (00:21)
Silverlight and Threading (30:19)
- Introduction (00:48)
- Threading (04:52)
- Threading Considerations (03:30)
- Demo: Update UI Thread (03:25)
- BackgroundWorker Class (05:48)
- Threading Gotchas (01:23)
- Timers (02:38)
- Timer in Action (03:21)
- Demo: Timer (04:05)
- Summary (00:23)
Isolated Storage (23:41)
- Introduction (00:44)
- MethodAccessException (02:20)
- LocalStorage (02:49)
- Isolated Storage API (03:00)
- User Scoped Storage (01:14)
- Where Are Files Located? (01:28)
- IsolatedStorageFile API (00:56)
- IsolatedStorageFileStream (01:10)
- Writing to Streams (01:55)
- Locating Files (01:23)
- Reading from Streams (01:14)
- Demo: Read and Write Files (04:58)
- Summary (00:25)
Module 5
Local Storage in Silverlight (19:07)
- Introduction (00:39)
- OpenFile Dialog Box (03:12)
- OpenFileDialog in Action (02:49)
- Demo: OpenFileDialog (05:00)
- Storage Concepts (01:21)
- Quota (03:00)
- Occasional Connection (02:29)
- Summary (00:34)
XML in Silverlight (40:20)
- Introduction (00:36)
- XML in .NET (05:12)
- XML in Silverlight (02:43)
- Pulling XML Data (01:10)
- XmlWriter (02:18)
- Writers in Action (02:46)
- Creating XML Content (03:27)
- XMLReader (02:12)
- Readers in Action (01:18)
- Using the Reader (03:02)
- Walkthrough: XmlWriter (07:22)
- Demo: XmlWriter (01:02)
- Read an XML File (01:51)
- Read in the Real World (04:35)
- Summary (00:39)
LINQ to XML (16:44)
- Introduction (00:49)
- LINQ to XML (03:28)
- Demo: LINQ to XML (02:00)
- Demo: ParseWithLinq (02:18)
- Demo: Update the UI (01:56)
- Application Settings (03:18)
- Custom Containers (02:21)
- Summary (00:29)
Module 6
Networking (44:06)
- Introduction (00:37)
- Communication Facts (01:55)
- Communication APIs (01:33)
- WebClient (03:15)
- On-Demand Download (00:58)
- Demo: WebClient Class (04:49)
- DownloadStringCompleted (00:58)
- Parsing the Content (03:55)
- UpdateUI (02:20)
- buttonBar (02:25)
- WebRequest (04:05)
- Helper Streams (01:45)
- Demo: WebRequest (06:34)
- Response Stream (05:49)
- DataContractJsonSerializer (02:35)
- Summary (00:26)
Cross-Domain Calls (17:39)
- Introduction (00:39)
- Synchronous Calls (05:03)
- Deadlocks (01:36)
- Sync Call to Remote URL (03:44)
- Evergreen Approach (01:09)
- Cross-Domain Calls (02:20)
- CrossDomain.xml (01:16)
- ClientAccessPolicy.xml (01:15)
- Summary (00:34)
Module 7
WCF (43:48)
- Introduction (00:32)
- Data and Services (03:09)
- Silverlight and Services (03:17)
- Four Moves (04:08)
- WCF Services (01:31)
- ABCs of WCF (01:28)
- Defining the Contract (01:19)
- Defining the Data Contract (01:24)
- Implement the Service (00:57)
- Publish the Service (04:03)
- Invoke the Service (02:54)
- Call the Proxy Class (01:56)
- Get Data from Service (01:32)
- Create WCF Service (03:07)
- IStockService Interface (00:50)
- Create the Endpoint (01:17)
- Edit Web.config (01:26)
- Config the Web Service (05:42)
- Using Data from the Service (02:24)
- Summary (00:44)
Securing Services (39:05)
- Introduction (00:35)
- Considerations (02:06)
- JSON, SOAP, AJAX (05:54)
- XML vs JSON (03:16)
- JSON in Silverlight (02:03)
- Services in Silverlight (01:46)
- Security for Services (01:07)
- Securing Public Services (01:51)
- Securing Backend Services (02:29)
- Graphically Speaking (01:27)
- Protecting the Page (01:17)
- ASP.NET Changes (01:59)
- Authentication (00:46)
- Inside the Service (01:41)
- ASP.NET Compatibility (01:43)
- Outside Callers (00:38)
- Demo: Protected Service (07:46)
- Summary (00:33)
Module 8
Security Models (19:19)
- Introduction (00:25)
- Security and RIA (01:23)
- ActiveX (03:24)
- Balancing Security (01:55)
- Code Access Security (01:30)
- Human Factor (01:29)
- CAS or Not? (01:00)
- Silverlight Security (01:39)
- Transparent Code (01:36)
- Critical Code (01:46)
- SecurityCritical Attribute (00:54)
- Safe-Critical Code (01:52)
- Summary (00:21)
Critical Code (22:42)
- Introduction (00:32)
- Why Critical Code? (01:08)
- Critical & Safe-Critical (02:01)
- Graphically Speaking (02:31)
- App vs Platform Code (01:05)
- Detecting Platform Code (01:25)
- Inheritance Rules (01:48)
- Override Safe-Critical Code (04:24)
- Demo: Critical Code (07:14)
- Summary (00:29)
WPF and Silverlight (31:59)
- Introduction (00:35)
- Can You Reuse XAML? (01:48)
- Sharing XAML (02:43)
- Demo: WPF User Control (02:30)
- Separation of Concerns (02:32)
- Inside the Code-Behind (02:16)
- Model-View-Presenter (03:05)
- M-V-P Illustrated (01:17)
- Structure of Presenter (03:00)
- Demo: M-V-P Pattern (07:27)
- Model-View-ViewModel (04:07)
- Summary (00:34)