Learn your way! Get started

Building Web Services Using Visual C# 2005

with expert Barry Solomon


Course at a glance

Included in these subscriptions:

  • Dev & IT Pro Video
  • Dev & IT Pro Power Pack
  • Power Pack Plus

Release date Release date 1/18/2007
Level Level Advanced
Runtime Runtime 10h 29m
Closed captioning Closed captioning N/A
Transcript Transcript N/A
eBooks / courseware eBooks / courseware Included
Hands-on labs Hands-on labs Included
Sample code Sample code Included
Exams Exams Included
Platform Platform Internet Explorer Only


Enterprise Solutions
Enterprise Solutions

Need reporting, custom learning tracks, or SCORM? Learn More



Course description

In this course, you will build a solid foundation for the development of Web Services using Visual C# 2005 and gain an understanding of how commonly used protocols can impact your development effort. You will learn how to create and consume ASP.NET Web Services, work with XML serialization, and understand discovery and UDDI. You will also learn how current and evolving standards, such as Web Service Enhancements (WSE) 3.0 and Message Transmission Optimization Mechanism (MTOM), can be integrated in Web Service development. Discover how to secure your Web Services using different technologies like X.509 certificates and Kerberos. Learn how to increase reliability of your XML messages by locating bottlenecks and invoking delivery verification.

Prerequisites

This course assumes that students have some programming background using Visual Basic 2005 and Visual Studio 2005. Students are expected to have a working knowledge of Web development and ASP.NET 2.0.

Meet the expert

Barry Solomon Barry Solomon has over 23 years of experience as a consultant. He has developed with Fortran, C, C , Visual Basic, Java, and Visual C#. His extensive database experience includes working with Microsoft Access, Microsoft SQL Server, MySQL, and Oracle. His expertise now includes working with big data, Hadoop in particular, and all of its attending ecosystems as the limitations have been exceeded in most modern database systems.


Course outline



Module 1

Intro to Web Services (36:20)
  • Introduction (01:14)
  • Overview: Web Services (02:24)
  • Web Service Technologies (04:53)
  • XML Data Representation (02:30)
  • SOAP (01:58)
  • Pub / Discovery Standards (00:56)
  • Put it all Together (02:41)
  • Web Service Design (04:11)
  • Use VS to Create WS (01:53)
  • Demo: Create a WS (02:35)
  • Web Methods (01:17)
  • Test the WS (00:54)
  • WSDL Files (01:05)
  • Web Service Namespace (01:49)
  • Simple WS Example (00:35)
  • Demo: Test the WS (00:56)
  • View the WSDL File (02:08)
  • Test the Web Method (00:11)
  • View the SOAP Packets (01:49)
  • Summary (00:13)
Web Service Example (30:56)
  • Introduction (00:43)
  • WS Example Details (03:00)
  • Test the WS (00:40)
  • Investigate the WSDL (00:58)
  • Test Web Methods (02:02)
  • Web Service Clients (01:14)
  • Web Reference (01:24)
  • Files VS Adds to WS (01:48)
  • Invoke the WS (00:54)
  • Demo: Add a Reference (02:23)
  • View the .disco File (00:31)
  • View the .wsdl File (00:23)
  • View the .discomap File (00:30)
  • Client App Code (02:39)
  • Test the Client (03:02)
  • UDDI (02:18)
  • Demo: Use a Public WS (00:08)
  • Invoke Web Method Code (05:33)
  • Summary (00:39)
Creating Async Web Services (27:26)
  • Introduction (01:28)
  • The Need for Async WS (03:55)
  • One-Way Methods (01:37)
  • Async Web Methods (03:30)
  • Demo: Async Methods (05:50)
  • Call Web Methods Async. (01:51)
  • Callback Methods (02:33)
  • Demo: Calling WS Async (06:17)
  • Summary (00:22)
Async Calls u/WaitHandles (09:48)
  • Introduction (00:46)
  • Overview (02:03)
  • Demo: Async Processing (02:49)
  • Async Calls u/Polling (01:41)
  • Demo: Calls u/Polling (01:39)
  • Summary (00:48)

Module 2

XML Serialization (37:32)
  • Introduction (00:58)
  • Overview: Serialization (02:29)
  • Demo: Serialize a Class (02:12)
  • View a Serialized File (00:53)
  • Work with XML Serialization (01:54)
  • Serialize an Object (07:16)
  • Deserialize an Object (01:33)
  • More Complex Data (01:26)
  • View Other Classes (00:57)
  • xmlArrayAttribute (02:08)
  • xlAttributeAttribute (00:34)
  • Inheritance/Serialization (04:21)
  • Demo: More Complex Data (04:48)
  • WS Custom Serialization (02:04)
  • Demo: Custom Serialization (03:31)
  • Summary (00:19)
SOAP Formatting (29:30)
  • Introduction (00:55)
  • Overview: SOAP Formatting (01:25)
  • Basic SOAP Manipulation (02:54)
  • SOAPAction Attribute (01:58)
  • SOAP Encryption (02:27)
  • X509 Certificates (02:42)
  • Security Tokens (01:08)
  • Kerberos Tickets (01:08)
  • Custom Security (01:01)
  • Context Token Prog. (00:52)
  • Namespaces/Binding (01:47)
  • WebServicesBinding Attrib (10:44)
  • Summary (00:23)
SOAP Serialization (18:40)
  • Introduction (01:10)
  • Using Attributes (01:18)
  • Simple Web Method (02:33)
  • Demo: Sample WS (03:52)
  • Configuration Files (02:43)
  • Add/Remove Protocols (06:02)
  • Summary (00:59)
Implement WSE Security (24:33)
  • Introduction (01:01)
  • Overview WSE3.0 (02:54)
  • Demo: Install WSE3.0 (02:15)
  • Examine WSE3.0 (00:28)
  • WSE3.0 Tool (03:02)
  • WSE3.0 Security (02:33)
  • Demo: WSE3.0 Tool (02:35)
  • WSE Security Wizard (06:19)
  • View web.config file (00:40)
  • View New Policy File (01:54)
  • Summary (00:47)

Module 3

Security Models (51:05)
  • Introduction (00:34)
  • X.509 Certificates (01:02)
  • Client Side (00:39)
  • Server Side (00:44)
  • Policy Assertion (01:45)
  • Client Configuration (01:38)
  • Demo: Create Certificates (03:57)
  • Certificate Tools (04:47)
  • X.509 Cert. Settings (02:47)
  • Security Settings Wizard (02:17)
  • View Policies (03:23)
  • Service Configuration (00:58)
  • Demo: Service Config (08:33)
  • Kerberos (02:23)
  • Kerberos Client Config. (01:09)
  • Demo: Client Config (04:23)
  • Kerberos Service Config. (01:06)
  • Demo: Server Config (03:26)
  • Set up Web Service (04:48)
  • Summary (00:36)
UserName Authentication (27:33)
  • Introduction (01:05)
  • UserName Tokens (02:49)
  • Client Configuration (00:41)
  • Set Up Client Config (00:18)
  • Add a Policy (00:20)
  • Secure a Client (00:34)
  • Set Up Protection Order (01:02)
  • Set up Security Code (02:36)
  • Service Configuration (01:09)
  • Set Up Service Config. (00:41)
  • Secure a Service (00:07)
  • Perform Authorization (01:04)
  • Add Protection Order (00:21)
  • View the Policy File (00:48)
  • View/Run Client Application (02:55)
  • Database Use (01:13)
  • Config. a Web Service (00:36)
  • Custom Username Token (01:12)
  • SecurityTokenManager (02:02)
  • Setup Custom Class (05:17)
  • Summary (00:32)
Coding and Assertion (46:12)
  • Introduction (01:04)
  • Coding an Assertion (03:29)
  • Code: Assertion Class (01:35)
  • ReadXML (02:34)
  • GetExtensions (02:26)
  • Coding SOAP Filters (01:29)
  • Securing of SOAP Messages (01:06)
  • ReceiveSecurityFilter (01:41)
  • SendSecurityFilter (00:41)
  • Client-side Security (01:06)
  • Code: Setup Filters (01:36)
  • Security Token State (01:48)
  • Code: Security Filters (01:13)
  • Code: Server Input Filter (04:57)
  • Code: Server Output Filter (02:41)
  • Code: Client Output Filter (03:04)
  • Code: Client Input Filter (03:10)
  • Code: Function Overrides (04:09)
  • Review (05:56)
  • Summary (00:18)

Module 4

Custom Policies (49:40)
  • Introduction (00:57)
  • Client-side Security (01:32)
  • WSE 3.0 Custom Policy (00:35)
  • Policy Files (02:24)
  • Extensions (01:42)
  • Secure WS w/Assertions (01:11)
  • Web Client w/Assertions (01:07)
  • Examine WS Project (01:27)
  • View Policy File (04:18)
  • Custom Assertion Class (00:00)
  • Examine Library Project (05:15)
  • Examine Filters (09:06)
  • Examine Client Project (09:02)
  • Coding of Policies (02:43)
  • Demo: Coding of Policies (00:52)
  • x509TokenProvider (00:30)
  • EndpointProtection (00:15)
  • SignatureOptions (00:51)
  • MessageProtection (00:17)
  • Add the Assertion (00:54)
  • View Client Class Code (03:50)
  • Summary (00:42)
Exploring MTOM (14:40)
  • Introduction (01:09)
  • Overview: MTOM (01:52)
  • MTOM Structure (01:34)
  • MTOM uses XOP (01:45)
  • Use / Non-use of MTOM (01:33)
  • Use of MTOM (00:53)
  • Non-use of MTOM (00:26)
  • MTOM and WSE3.0 (01:28)
  • Demo: MTOM (03:26)
  • Summary (00:29)
Large Data Transfer (14:07)
  • Introduction (00:46)
  • Overview (01:13)
  • Demo: Large Data Transfer (05:21)
  • Work with Schema Code (00:28)
  • Work with XML Code (01:30)
  • Test the Data Transfer (04:07)
  • Summary (00:40)
Soap Messaging (27:32)
  • Introduction (00:56)
  • TCP / Web Services (01:35)
  • W3C Specs for Messaging (01:44)
  • Endpoint Reference (01:51)
  • SOAP Message Addressing (00:56)
  • SoapMSMQ (03:05)
  • Two-Way Messaging (01:31)
  • Register Messaging Services (00:20)
  • Register Using TCP (01:13)
  • Register Using HTTP (01:32)
  • Install/Configure MSMQ (02:08)
  • Use SoapClient/SoapMSMQ (10:14)
  • Summary (00:21)

Module 5

SOAP Sender / Receiver (28:12)
  • Introduction (00:36)
  • Overview (00:25)
  • One-Way Messaging (01:08)
  • Register with TCP (00:27)
  • Register with HTTP (02:02)
  • Demo: Register with TCP (01:36)
  • Code: Register with TCP (04:00)
  • Serialization Code (03:45)
  • Demo: Receiver Form (00:30)
  • Code: Receiver Form (00:48)
  • Code: Listener Class (02:19)
  • Demo: Start Up Form (01:21)
  • Code: Start Up Form (02:01)
  • Code: Mid-Tier Form (00:28)
  • Code: Listener Class (02:53)
  • Run the Sample (03:24)
  • Summary (00:20)
Working w/SOAP Headers (31:21)
  • Introduction (00:49)
  • Overview (01:14)
  • Service Code (02:14)
  • Code: SOAP Header Service (03:23)
  • Client Code (01:41)
  • SOAP Header Direction (00:55)
  • Code: Header Direction (01:16)
  • View WSDL File (05:22)
  • Unknown Headers (01:22)
  • Client SOAP Headers (01:00)
  • SOAP Header Exceptions (01:57)
  • Unknown Header Code (03:04)
  • Header Exception Code (02:53)
  • Client Coding (03:45)
  • Summary (00:20)
Work w/SOAP Extensions (37:03)
  • Introduction (00:57)
  • Overview: Functions (03:32)
  • Working with Streams (04:57)
  • Initialization (04:56)
  • Processing (04:21)
  • Code: LogExtensions (02:59)
  • Code: SOAPMessageStage (04:54)
  • Config. File Elements (02:15)
  • Implementing Extensions (00:47)
  • Code: soapExtensionType (06:42)
  • Summary (00:39)

Module 6

Reliable Messaging (RM) (32:10)
  • Introduction (00:58)
  • Overview (02:56)
  • WS-RM Model (04:47)
  • RM Modes (01:11)
  • QueuedRM (04:05)
  • DirectRM (03:19)
  • RM Sequences (00:59)
  • Demo: Client Policy File (05:54)
  • Sequence Profiles (00:40)
  • Demo: Server Policy File (02:39)
  • Sequence Groups (00:52)
  • Sequence Managers (01:53)
  • RM Wrapup (01:34)
  • Summary (00:17)
WS-RM Server (36:49)
  • Introduction (00:50)
  • Queue Bottlenecks (02:22)
  • Delivery Verification (01:19)
  • WS-RM Policy (01:21)
  • Sequence Acknowledgement (01:42)
  • Request Acknowledgement (00:39)
  • WS-RM Event Flow (01:23)
  • Correlating Replies (01:13)
  • Demo: Messaging Sample (03:31)
  • Demo: Server App Code (05:19)
  • IInputSequence (01:51)
  • IOutputSequence (04:14)
  • View App Output (10:43)
  • Summary (00:14)
WS-RM Client (11:04)
  • Introduction (00:28)
  • Demo: Client App Code (00:32)
  • Retrieve Endpoints (01:27)
  • CreateSequence (03:57)
  • FullSequenceWasDelivered (02:08)
  • FullSequenceWasAcked (02:03)
  • Summary (00:26)
Authentication and Validation (07:06)
  • Introduction (00:36)
  • MQ Encryption (00:44)
  • MQ Authentication (03:00)
  • Message Validation (02:21)
  • Summary (00:22)