|WebServices.zip (12Mb)||Dan's examples in a zip file|
|SOAPScope installer (19Mb)||Tools for soap|
|Nant zip (1Mb)||build tools like nat for .NET|
|Nunit.installer (1Mb)||Unit test frameweork like Junit for .NET|
Web Services (day 1) ----------------------------- 1. Web Services Architecture (but shorter perhaps) Introduces Web services as the next-generation platform for building distributed systems. Specifically this module discusses the evolution of the Web, distributed system technology, and the various new XML specifications that come together to form the Web services platform. This discussion will familiarize you with Web service terminology and help you understand the big picture the drives Microsoft's implementation in .NET. 2. ASP.NET Web Services combine with VS.NET Covers project management details, deployment issues, debugging, and some helpful tools in VS. Discusses various techniques for building Web services in .NET such as writing custom handlers, using .NET remoting, and the preferred solution: ASP.NET. The rest of the module covers how to write ASP.NET WebMethods that expose traditional methods as Web service operations supporting the various XML/Web service specifications discussed in the architecture module 3. Web Service Clients (can be shorter) Discusses various techniques for consuming Web services from a client application. Covers .NET's client-side HTTP stack (System.Net) and WSDL-based proxy classes (wsdl.exe), both of which offer synchronous and asynchronous processing. If time lets do an example ... Essential.NET in C# (day 2) --------------------------- 1. Objects, Values and Memory Objects are instances of types that are managed by the runtime. Objects are allocated on a garbage-collected heap and can be compared for both identity and equivalence. The Common Language Runtime also supports defining lightweight classes called Value Types, whose instances are allocated in memory that is contiguous with where they are declared. Value types are useful for reducing memory management overhead due to excessive heap allocations. This module explores the relationship between reference and value types. 2. Reflection and Attributes The Common Language Runtime makes virtually every facet of a type definition available to programmers in any language. The presence of such rich type information, as well as an API for accessing it easily at runtime, enables numerous forms of tool development and type system interoperability. 3. Combination module PInvoke - .NET and traditional DLL interop Exception handling Multithreading through delegates Questions and Answers web services (day 3) ---------------------------------------- 1. HTTP Pipeline Describes the .NET HTTP pipeline (System.Web), how it integrates with IIS, and various configuration details. Illustrates how to build custom HTTP handlers that can be configured to handle certain types of requests as well as simple .ashx handlers. Also discusses how to take advantage of certain pipeline components within WebMethods 2. Programming XML include Navigator API at least a mention Discusses various techniques for programming XML in .NET including the low-level streaming APIs (XmlReader and XmlWriter), the DOM implementation (XmlNode), as well as the built in support for XPath 1.0. 3. XML serialization Discusses how WebMethods automatically translate between XML documents and CLR objects at runtime. Covers System.Xml.Serialization (XmlSerializer), xsd.exe, various mapping attributes, and integration with WebMethods SOAP day 4. ------------ 8. SOAP 1.1/ASP.NET Web Services and SOAP (1 lab) Introduces SOAP is the de-facto framework for XML messaging systems. Discusses the need for SOAP, and outlines the framing and extensibility elements that make it possible to negotiate application-level protocols. Also covers SOAP's standard error representation, HTTP binding, and encoding details Discusses WebMethod support for automatic SOAP processing, as well as the various customization attributes for controlling SOAP message details including SOAPAction, various encoding details, errors represented as SOAP Faults, as well as custom header processing. Streaming Web services .... 9. WSDL 1.1/ASP.NET Web Services and WSDL (1 lab) Introduces the Web Services Description Language (WSDL), today's de-facto standard for describing Web services, and discusses the benefits of a machine-readable format. Covers . NET's WSDL support in wsdl.exe. Discusses WebMethod support for automatic WSDL generation. This support includes a default mapping between class methods and WSDL operations as well as various customization attributes that allow you to control WSDL service and binding details. 10. Scalability Discusses various aspects of building scalable Web services including session and state management, caching, and other possible optimizations (e.g., asynchronous WebMethods). SOAP day 5 ------------------ 1. Versioning and Interoperability Covers the never-ending issue of versioning, which even exists with Web services. Starts by defining various Web service versioning issues, and provides design recommendations that will help make your WebMethods easier to evolve over time. Discusses various complexities that manage to get in the way of interoperability today. Offers design suggestions that will allow your WebMethods to interoperate with as many other Web service toolkits as possible. 2. DIME - binary XML format, Extending Web Methods WS-Futures WSE 3. Free form Lab - put some of this together on our lap tops. Include ADO to access DB and perhaps stream the result from a web sevice and consume with client. Optional be ready to do something on interaction with SQL bottlenecks in the above type app.
Last Modified: $Revision: 1.9 $