<?xml version="1.0" standalone="no" ?>

<!--  AIT_Windows_Communication_Foundation.xml	Course Outline in XML format
 *
 * Copyright 2009 Affinity IT Training, LLC. All Rights Reserved.
 *
 -->

<!DOCTYPE FAI:CourseOutline SYSTEM "FAI_CourseOutline.dtd">

<?xml-stylesheet type="text/xsl" href="FAI_CourseOutline.xsl" ?>	

<FAI:CourseOutline FAI:link="AIT_Windows_Communication_Foundation.xml"
     xmlns:FAI="http://www.fisher-assoc.com/DTDs/FAI_CourseOutline.dtd" >

  <FAI:CourseTitle FAI:level="Introduction" FAI:code="WCFIntro">
    Essential Windows Communication Foundation (WCF)
  </FAI:CourseTitle>  

    <FAI:CourseCategory>Microsoft</FAI:CourseCategory>
    <FAI:CourseCategory>Windows</FAI:CourseCategory>
    <FAI:CourseCategory>Communication</FAI:CourseCategory>
    <FAI:CourseCategory>Windows Communication Foundation</FAI:CourseCategory>
    <FAI:CourseCategory>WCF</FAI:CourseCategory>
  
  <FAI:SummaryInfo>

    <FAI:CourseDesc FAI:version="Jul09" >
	This course shows how to implement Windows Communication Foundation (WCF),
	the easiest way to produce and consume Web services on the Microsoft platform. 
    </FAI:CourseDesc>

    <FAI:CourseDuration>
	3 days
    </FAI:CourseDuration>

    <FAI:CourseAudience>
	Application developers and programmers who need to to create web services and clients with .NET 3.5 using
	Visual Studio 2008.
    </FAI:CourseAudience>

    <FAI:CourseObjectives>
      <FAI:Objective FAI:desc="Learn to use WCF contracts to define complex structures and interfaces." />
      <FAI:Objective FAI:desc="Understand WCF&apos;s channel stacks and channel model architecture." />
      <FAI:Objective FAI:desc="Learn to configure the WCF communication stack to use only the protocols you need." />
      <FAI:Objective FAI:desc="Become familiar with how to use standard and custom service behaviors to manage 
      	concurrency, instances, transactions, and more." />
      <FAI:Objective FAI:desc="Learn to serialize data from .NET types to XML Infosets and represent Infosets 
      	&quot;on the wire&quot;." />
      <FAI:Objective FAI:desc="Be able to host WCF services via IIS, managed .NET applications, 
      	and Windows Activation Services." />
      <FAI:Objective FAI:desc="Become familiar with WCF security, including authentication; transport and message-level 
      	security; and Internet and intranet scenarios." />
      <FAI:Objective FAI:desc="Learn to improve reliability with exception handling, diagnostics, and more." />
      <FAI:Objective FAI:desc="Become familiar with workflow services including new integration points between WCF 3.5 
      	and Windows Workflow Foundation." />
      <FAI:Objective FAI:desc="Learn to build client-to-client and peer network-based applications." />
      <FAI:Objective FAI:desc="Learn to  utilize WCF for non-SOAP Web services including
      	AJAX and JSON examples and .NET 3.5 hosting classes " />
    </FAI:CourseObjectives>

    <FAI:CourseSetupList>
    	<FAI:Setup FAI:desc="Windows Communication Foundation (WCF)"
    		FAI:link="http://msdn.microsoft.com/en-us/library/ms733890.aspx" />
	<FAI:Setup FAI:desc="Visual Studio 2008"  
		FAI:link="http://www.microsoft.com/visualstudio/en-us/try/default.mspx?pt_id=-1&amp;WT.mc_id=A73806DC-0422-4DA7-9A2C-4580589D8C98&amp;WT.srch=1&amp;wt.mc_id=vspdsrch" />
    </FAI:CourseSetupList>    

    <FAI:CourseTextList>
      <FAI:Text  FAI:title="Course Workbook" />
      <FAI:Text  FAI:title="Essential Windows Communication Foundation (WCF)"
      		FAI:link="http://www.amazon.com/Essential-Windows-Communication-Foundation-WCF/dp/0321440064" />
    </FAI:CourseTextList>    

    <FAI:CoursePrerequisiteList>
             <FAI:CoursePrerequisite FAI:title="Visual Basic 2008" 
			      FAI:link="AIT_Visual_Basic_2008.xml" />
    </FAI:CoursePrerequisiteList>    

  </FAI:SummaryInfo>  

  <FAI:TopicList> 
        <FAI:SuperTopic FAI:title="Basics" >
          	<FAI:Topic FAI:title="Why WCF Matters" />
          	<FAI:Topic FAI:title="Introduction" />
          	<FAI:Topic FAI:title="Implementing a WCF Service" />
          	<FAI:Topic FAI:title="Implementing a Client for a WCF Service" />
          	<FAI:Topic FAI:title="Hosting a Service in IIS" />
          	<FAI:Topic FAI:title="Implementing a WCF Client for an ASMX Service" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Contracts">
                <FAI:Topic FAI:title="Service Contracts" />
		<FAI:Topic FAI:title="Data Contracts" />
		<FAI:Topic FAI:title="Message Contracts" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Channels" >
          	<FAI:Topic FAI:title="Channel Shapes" />
          	<FAI:Topic FAI:title="Operation Contract and Channel Shapes" />
          	<FAI:Topic FAI:title="Channel Listeners" />
          	<FAI:Topic FAI:title="Channel Factories" />
          	<FAI:Topic FAI:title="ICommunicationObject" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Bindings">
                <FAI:Topic FAI:title="Choosing an Appropriate Binding" />
		<FAI:Topic FAI:title="Cross-Machine Communication Between .NET Applications" />
		<FAI:Topic FAI:title="Local Machine Communication Between .NET Applications" />
		<FAI:Topic FAI:title="Communication Using Basic Web Services" />
          	<FAI:Topic FAI:title="Communication Using Advanced Web Services" />
          	<FAI:Topic FAI:title="Comparing Binding Performance and Scalability" />
          	<FAI:Topic FAI:title="Communication Using Queued Services" />
          	<FAI:Topic FAI:title="Creating a Custom Binding" />
          	<FAI:Topic FAI:title="Binding Elements" />
          	<FAI:Topic FAI:title="Exposing a Service Contract over Multiple Bindings" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Behaviors">
                <FAI:Topic FAI:title="Concurrency and Instancing (Service Behavior)" />
		<FAI:Topic FAI:title="Exporting and Publishing Metadata (Service Behavior)" />
		<FAI:Topic FAI:title="Implementing Transactions (Operation Behavior)" />
          	<FAI:Topic FAI:title="Implementing Custom Behaviors" />
          	<FAI:Topic FAI:title="Security Behaviors" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Serialization and Encoding">
                <FAI:Topic FAI:title="Comparing WCF Serialization Options" />
		<FAI:Topic FAI:title="Preserving References and Cyclical References" />
		<FAI:Topic FAI:title="Sharing Type with the NetDataContractSerializer" />
		<FAI:Topic FAI:title="Roundtrip Serialization Using IExtensibleDataObject" />
          	<FAI:Topic FAI:title="Serializing Types Using Surrogates" />
          	<FAI:Topic FAI:title="Streaming Large Data" />
          	<FAI:Topic FAI:title="Using the XmlSerializer for Custom Serialization" />
          	<FAI:Topic FAI:title="Choosing an Encoder" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Hosting">
                <FAI:Topic FAI:title="Hosting a Service in Windows Process Activation Services" />
		<FAI:Topic FAI:title="Hosting a Service in IIS 7" />
		<FAI:Topic FAI:title="Enabling ASMX Features in an IIS-Hosted Service" />
		<FAI:Topic FAI:title="Self-Hosting" />
          	<FAI:Topic FAI:title="Self-Hosting in a Managed Windows Service" />
          	<FAI:Topic FAI:title="Hosting Multiple Services in One Process" />
          	<FAI:Topic FAI:title="Defining Service and Endpoint Addresses" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Security">
                <FAI:Topic FAI:title="WCF Security Concepts" />
		<FAI:Topic FAI:title="Certificate-Based Encryption" />
          	<FAI:Topic FAI:title="Transport-Level Security" />
          	<FAI:Topic FAI:title="Message-Level Security" />
          	<FAI:Topic FAI:title="Securing Services with Windows Integrated Security" />
          	<FAI:Topic FAI:title="Securing Services over the Internet" />
          	<FAI:Topic FAI:title="Logging and Auditing" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Diagnostics" >
          	<FAI:Topic FAI:title="Sample WCF Application" />
          	<FAI:Topic FAI:title="Tracing" />
          	<FAI:Topic FAI:title="Message Logging" />
          	<FAI:Topic FAI:title="Additional Configuration Options" />
          	<FAI:Topic FAI:title="Using the Service Configuration Editor" />
          	<FAI:Topic FAI:title="Service Trace Viewer" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Exception Handling">
                <FAI:Topic FAI:title="Introduction to WCF Exception Handling" />
		<FAI:Topic FAI:title="Communicating Exception Details" />
		<FAI:Topic FAI:title="Managing Service Exceptions with FaultException" />
		<FAI:Topic FAI:title="Limitations of Basic FaultExceptions" />
          	<FAI:Topic FAI:title="Creating and Consuming Strongly Typed Faults" />
          	<FAI:Topic FAI:title="Implementing Client Fault Handlers" />
          	<FAI:Topic FAI:title="Error-Handling Application Block" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Workflow Services" >
                <FAI:Topic FAI:title="Integration Points" />
		<FAI:Topic FAI:title="Calling a WCF Service from WF" />
		<FAI:Topic FAI:title="Exposing a Service from WF" />
          	<FAI:Topic FAI:title="Correlation and Durable Services" />
          	<FAI:Topic FAI:title="Controlling Access to Service-Enabled Workflows" />
        </FAI:SuperTopic>
        <FAI:SuperTopic FAI:title="Peer Networking" >
          	<FAI:Topic FAI:title="Approaches to Building Distributed Applications" />
          	<FAI:Topic FAI:title="Peer-to-Peer Applications" />
          	<FAI:Topic FAI:title="Creating Peer-to-Peer Applications" />
          	<FAI:Topic FAI:title="Resolving Peers Using PNRP" />
          	<FAI:Topic FAI:title="Registering Names Using PNRP" />
          	<FAI:Topic FAI:title="Implementing a Custom Peer Resolver" />
          	<FAI:Topic FAI:title="Limiting the Number of Hops for a Message" />
          	<FAI:Topic FAI:title="Collaboration Using Windows Vista" />
          	<FAI:Topic FAI:title="Directional Messaging Using Custom Binding" />
        </FAI:SuperTopic> 
        <FAI:SuperTopic FAI:title="Programmable Web">
                <FAI:Topic FAI:title="All About the URI" />
		<FAI:Topic FAI:title="URI and UriTemplates" />
		<FAI:Topic FAI:title="Creating Operations for the Web" />
		<FAI:Topic FAI:title="Using WebGet and WebInvoke" />
          	<FAI:Topic FAI:title="Programming the Web with AJAX and JSON" />
          	<FAI:Topic FAI:title="Using the WebOperationContext" />
          	<FAI:Topic FAI:title="Hosting for the Web" />
          	<FAI:Topic FAI:title="Content Syndication with RSS and ATOM" />
        </FAI:SuperTopic>
  </FAI:TopicList>
  <!--***<FAI:Appendix FAI:title="Advanced Topics (same problem as other appendix)" />-->
</FAI:CourseOutline>
