4150. Web Services Using C#
and .NET
Rev. 4.0
This course provides a realistic, hands-on, comprehensive coverage
of developing Web services using .NET and C#. Web services are an evolving
series of standards that enable programs on various computers to communicate
with other programs on similar or disparate computers transparently over the
Internet. This course teaches in detail the skills needed to program Web
services using.NET technologies, both ASP.NET and Windows Communication
Foundation (WCF). It also examines the fundamentals of SOAP, WSDL and REST. The
course is current to .NET 4.0 and Visual Studio 2010, with coverage of newer
features such as the WS-I Basic Profile 1.1, SOAP 1.2, the event pattern for
calling Web services asynchronously, support for REST services, and more.
The first chapter introduces Web services and Service Oriented
Architecture (SOA). The baseline Web service specifications of XML, SOAP, WSDL
and UDDI are outlined.
Chapter 2 covers the fundamentals of SOAP and WSDL. Web services are
developed using the .NET Framework SDK. Chapter 3 covers the details of how to
create and debug ASP.NET Web services using Visual Studio 2010.
Chapter 4 shows how to create clients for Web services using an SDK
tool and using Visual Studio 2010. Sophisticated topics, such as state
management, caching and transactions in Web services are covered in Chapter 5.
The next three chapters discuss important technologies at the foundation of
.NET Web services, including XML serialization, SOAP and WSDL.
Chapter 9 provides a practical discussion of data access using Web
services. Chapter 10 introduces Windows Communication Foundation. The course
concludes with a detailed discussion of Representational State Transfer (REST)
and the implementation of REST Web services and clients using WCF and .NET.
LEARNING OBJECTIVES
·
Gain a comprehensive understanding of the
philosophy and architecture of Web services and Service Oriented Architecture
·
Acquire a working knowledge of creating and
consuming Web services using the .NET Framework 4.0 and Visual Studio 2010
·
Attain a detailed knowledge of the building
blocks of Web services, including XML, SOAP and WSDL
·
Understand issues in the ASP.NET programming
model, such as caching, data handling and state management
·
Implement Web services and clients using WCF.
·
Understand the issues of interoperability
between Web services created using ASP.NET and those created using WCF
·
Understand the principles of Representational
State Transfer and how to implement REST services and clients
Course Duration: 4 days
Prerequisites: Knowledge of the .NET Framework using C# and
an understanding of the fundamentals of XML. Some experience in ASP.NET is
advantageous.
1.
What Are Web Services?
Introduction to Distributed Computing
Network Latency
Object
State and Scalability
Interoperability
SOAP
WSDL
UDDI
Web Service Business Models
Service Oriented Architecture (SOA)
ASP.NET Web Services
Windows Communications Framework (WCF)
Representational State Transfer (REST)
2.
Web Services Fundamentals
Creating a Web Service Using ASP.NET
Deploying a Web Service Using IIS
Testing a Web Service
HTTP
XML
SOAP 1.1 and SOAP 1.2
Web Service Clients
WSDL
3.
Developing ASP.NET Web Services
Using Visual Studio 2010 to Develop Web Services
Visual Web Developer
Using ASP.NET Development Server
An Overview of the Web Services Namespaces
Deriving from the WebService Class
@Webservice Attribute
WebService Class
Adding a WebMethod to Web Services
Debugging Web Services
WS-I Basic Profile
ASP.NET Configuration
4.
Web Service Clients
Web Service Proxies
Web Services Description Language Tool (Wsdl.exe)
Understanding the Proxy Code
Creating a Proxy with Visual Studio 2010
Returning Complex User-Defined Data Types
5.
ASP.NET Web Services Programming Model
Asynchronous Programming in Web Services
Asynchronous Events in .NET 4.0
Managing State in ASP.NET Web Services
Transactions in ASP.NET Web Services
Caching in ASP.NET Web Services
6.
XML Serialization
XmlSerializer
What Is Not Serialized
Writing and Reading XML
Customizing XML Serialization
XML Schema and XSD
Creating Classes from Schemas
XML Serialization and Web Services
7.
More about SOAP
The Structure of SOAP Messages
Using SOAP Headers
SOAP Faults
Document and RPC Style Messaging
Literal and Encoded Use
Customizing SOAP with Attributes
Using SOAP 1.2
8.
More about WSDL
The Need for Service Description
An IDL for Web Services
WSDL Namespaces
The WSDL Description Model
WSDL Descriptors as Schema
Message Description
Messaging Scenarios
Operations: Input, Output, and Fault
Messages
Service Description
Extending WSDL
.NET WSDL Classes
WSDL First!
9.
Data Access with Web Services
Multiple-Project Solutions in Visual Studio
Multiple-Tier Data Access
Data Access Using ADO.NET 4.0
A Data Access Web Service
Data Binding with Windows Forms
Binding to a Web Service
10. Introduction
to WCF
What is WCF?
Address, Binding and Contract
WCF Services and Clients
IIS Hosting
Interoperability with ASMX Web Services
Data Contracts
11. REST
Web Services
Representational State Transfer
Using HTTP Methods
REST Services via WCF
Testing and Debugging using Fiddler
Clients of REST Services
Appendix A.
Learning Resources
System Requirements
Required software is Visual Studio 2010, Professional Edition or
higher. The recommended operating system is Windows 7. Internet Information
Services should be installed. See the course Setup Notes for details.
A good minimal hardware profile for this course would have a 2 GHz
or better CPU, 1 GB of RAM, and at least 4 GB of free disk space for tools
installation and courseware.