418. 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 3.5 and Visual Studio 2008
·
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.
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.
Introduction to WCF
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.