<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://code.msdn.microsoft.com/rss.xsl"?><rss version="2.0"><channel><title>netfxsamples Wiki Rss Feed</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Home</link><description>netfxsamples Wiki Rss Description</description><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=18</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foundation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3877';"&gt;Active Directory Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Active Directories can be used to get/set information in AD. The following Activities are in the bundle:&lt;br /&gt;- GetUserByLogonName&lt;br /&gt;- GetADPropertyValue&lt;br /&gt;- SetADPropertyValue&lt;br /&gt;- GetGroupByAlias&lt;br /&gt;- GetDirectoryEntry&lt;br /&gt;- SetPassword&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3883';"&gt;Amazon Web Service Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Amazon Web Services Activity Library consists of two activities: &lt;br /&gt;- AmazonSearch activity - Used to search for items on the Amazon.com site &lt;br /&gt;- AmazonLookup activity - used to get details about a specific item These activities also demonstrate how to implement a custom ActivityDesigner. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3878';"&gt;Create Excel Spreadsheet Activity (Excel 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity creates an Excel spreadsheet.&amp;nbsp; This was inspired by Doug Mahugh's &amp;quot;CreateXlsx Sample Program&amp;quot;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3879';"&gt;Create Word Document Activity (Word 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity will let you create a Word document within your workflow.&amp;nbsp; This activity was inspired by technical evangelist Doug Mahugh's &amp;quot;CreateDOCX sample program&amp;quot;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3889';"&gt;Custom Activity Framework&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Custom Activity Framework is a set of classes that simplify the development of custom activities. In this first version the base classes are designed for building activities that need to listen for external events. Examples of external events might be a file being created on the local file system, data being received in a queue, or the asynchronous completion of a web service call. To demonstrate how the base classes can be used, this package includes the FileSystemEvent activity that derives from the InputActivity base class in the Custom Activity Framework. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3886';"&gt;Dynamic Code Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Want to use something like the &amp;quot;Code&amp;quot; Activity, but maybe you want to pass your code in on the fly.&amp;nbsp; Maybe you are re-hosting the designer, and in some scenarios you want advanced users to be able to write &amp;quot;Just that one little bit of code.&amp;quot;&amp;nbsp; Vittorio has put together a sample activity that does just that.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3880';"&gt;Enhanced SQL Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Sent in by Trevor and the fine folks at NailSoup.&lt;br /&gt;This is an enhanced version of the Sql Activity posted elsewhere on this site.&lt;br /&gt;Issues fixed in this release are the following:&lt;br /&gt;- Ability to change the connection string in the CommandExecuting event.&lt;br /&gt;- Ability to handle a return value from the stored procedure.&lt;br /&gt;- Improved stability if the connection string is invalid at design time.&lt;br /&gt;- Issues I know of, but haven't had time to fix are:&lt;br /&gt; &lt;br /&gt;The activity needs a hard-coded connection string at design time in order to understand stored procedure parameters. &lt;br /&gt;If you change the parameters of a stored procedure at design time, the activity often &amp;quot;remembers&amp;quot; parameters that no longer exist. It is really hard to get rid of these without deleting the activity and starting again. The activity doesn't handle output parameters. It thinks they are all input parameters.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3884';"&gt;eBay Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The EBayGetCategories activity can be used to browse EBay’s product categories through EBay’s exposed web services. The EBayListItem activity can be used to post an item for sale. The EBayGetSellerList activity can be used to list the items a seller has for sale. These activities also demonstrate how to implement a custom ActivityDesigner. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3881';"&gt;File System Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The FileSystem activity can be used to perform File system operations/commands. This is a basic activity that uses the System.IO components to perform File system operations/commands at runtime. The FileSystem activity also demonstrates how to implement a custom ActivityDesigner, ActivityValidator, and UITypeEditor. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3887';"&gt;File System Watcher Activity for June CTP&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The FileSystemEvent activity is designed to monitor a specified folder on the local file system for an event occurring to a file. An event might include the file being created, modified, renamed, or deleted. This version of the FileSystemEvent activity is an enhanced version of the sample in the Windows Workflow Foundation SDK. This version is designed to use the InputActivity base class in the CustomActivityFramework, which simplifies the development of event-based activities. This version of the FileSystemEvent also provides a custom designer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3885';"&gt;MSN Search Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The MSNSearch activity is designed to execute a web search against MSN’s public search web service. The activity simply calls the web service within the Execute method of the activity. Before you can use this activity, you will need to create an MSN Application Id. Follow these steps to create an Application ID from the MSN Search Web Service Developer Provisioning System: &lt;br /&gt;- Point your browser to http://search.msn.com/developer. &lt;br /&gt;- Click Create and Manage Application IDs. &lt;br /&gt;- Sign in to the Passport Network. If you do not have a Passport, click Sign Up to create one. Passport authentication is required to use the Developer Provisioning System. &lt;br /&gt;- Once you're signed in, click Get a new App ID to create a new Application ID for your application. &lt;br /&gt;- Type a friendly name for your application in the Application Name text box. &lt;br /&gt;- Read the Terms of Use and click I Accept to agree to these terms. If you do not agree to the Terms of Use, click I Do Not Accept. The Application ID that appears on the page will not be activated if you choose not to accept the Terms of Use. &lt;br /&gt;- Once you've accepted the Terms of Use, you can now assign the Application ID to the AppId property of the MSNSearch activity. If you’re using the sample workflow included in the WorkflowConsoleApplication1 project, then simply copy the Application ID and paste it into the App.Config file. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3882';"&gt;Network Availability Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;&amp;nbsp;The NetworkActivities activity library contains two activities that are used to check and monitor network connectivity. These activities are wrappers on top of the classes provided in the System.Net.NetworkInformation namespace. These activities include: &lt;br /&gt;GetNetworkAvailabilityActivity – Simple returns whether or not network connectivity is available. &lt;br /&gt;NetworkAvailabilityActivity – Event-based activity that monitors network connectivity changes. This activity has two modes. It can either block until the network is available or it can close after receiving any event (connected or disconnected). The NetworkAvailabilityActivity uses the InputActivity base class in the CustomActivityFramework, which simplifies the development of custom, event-based activities. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3888';"&gt;WMI Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The WMI Activities are event-based activities that monitor WMI events on the local machine. There are two different sets of WMIActivities. The WMIActivities project/assembly contains a WMIEvent activity class, which can be configured to listen to any WMI event. This activity derives from the InputActivity in the CustomActivityFramework, which provides the underly logic for building an event-based activity that uses queues. Instead of configuring the activity every time it is used in a workflow, you may want to have typed versions that represent specific WMI events. The WMIActivities.Common project/assembly contains a couple examples of typed activities. These examples include: &lt;br /&gt;- ProcessEventActivity - monitors processes being created on the local system. &lt;br /&gt;- EventLogEntryCreatedActivity – monitors the application event log for new records. However, these are just two example typed WMI event activities. There are numerous events that can be monitored through WMI by using the base WMIEvent activity. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Thu, 03 Sep 2009 17:44:33 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20090903P</guid></item><item><title>UPDATED WIKI: WCF samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF samples&amp;version=8</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
WCF Samples
&lt;/h1&gt;Windows Communication Foundation (formerly code-named &amp;quot;Indigo&amp;quot;) is a set of .NET technologies for building and running connected systems. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#docs"&gt;Documentation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3378';"&gt;AzMan Authorization&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to use AzMan for authorization using custom authorization manager. The sample requires the installation of the AzMan component on the machine. For information on how to install AzMan, please see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000019.asp&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3379';"&gt;BizTalk Services Picture Syndication&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to integrate the PictureServices sample with BizTalk Services. It is based on the R10 release of BizTalk Services, and version 1.2 of PictureServices.&lt;br /&gt;Prerequisites: Picture Services 1.2, the BizTalk Services R10 SDK, and an account on BizTalk Services.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3381';"&gt;Credentials per Channel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to configure client credentials on a per-channel basis instead of a per-ChannelFactory basis. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3382';"&gt;CredMan UI - Inside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog inside the sending timeout &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3383';"&gt;CredMan UI - Outside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog outside of the sending timeout using the new RC1 feature - InteractiveChannelInitializers collection &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3384';"&gt;Custom Security Algorithm Suite&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates how one can implement a custom SecurityAlgorithmSuite. In particular, the custom suite implemented in the sample enables a service to enforce a minimum client cert key size of 2048 bits (all WCF SecurityAlgorithmSuites provided out-of-the-box enforce a minimum of 1024 bits). &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3385';"&gt;Custom Token Issuance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to create a custom token and issue a custom token to a client. It also demonstrates using transport security for obtaining security token and issuence of SAML token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3387';"&gt;Logon Token Cache&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to cache the logon token. The sample also shows how to remove an existing token from the cache or flush the token cache completely.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3397';"&gt;Pictures Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Pictures Services is a simple Windows Communication Foundation (WCF) service that is returns pictures from the computer in which the service is being hosted. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3388';"&gt;Reserialize SAML&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 1.1 token to a client. The Client presents the token to a proxy service. The Proxy Service uses the SAML token to secure the message to the real service at the backend. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3389';"&gt;SAML Token&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 2.0 token to a client. Client presents the token to a service. Client code has no custom code to receive and forward a SAML 2.0 token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3393';"&gt;WCF Architecture Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The code samples from the TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3939';"&gt;WCF Dynamic Proxy&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The DynamicProxy allows you to create the dynamic WCF client at runtime by specifying the WSDL URI of the service. The DynamicProxy does not depend on the precompiled proxy or configuration. The DynamicProxy uses the MetadataResolver to download the metadata from the service and WsdlImporter to create the contract and binding at runtime. The compiled dynamic proxy can be used to invoke the operations on the service using reflection.&lt;br /&gt; &lt;br /&gt;The example shows how you can the dynamic proxy to invoke operations that use simple types and complex types. The flow of usage is as following.&lt;br /&gt;1. Create the ProxyFactory specifying the WSDL URI of the service.&lt;br /&gt;    DynamicProxyFactory factory = new DynamicProxyFactory(&amp;quot;http://localhost:8080/WcfSamples/DynamicProxy?wsdl&amp;quot;);&lt;br /&gt;2. Browse the endpoints, metadata, contracts etc.     factory.Endpoints    factory.Metadata    factory.Contracts    factory.Bindings&lt;br /&gt;3. Create DynamicProxy to an endpoint by specifying either the endpoint or    contract name.    DynamicProxy proxy = factory.CreateProxy(&amp;quot;ISimpleCalculator&amp;quot;);&lt;br /&gt;    OR&lt;br /&gt;    DynamicProxy proxy = factory.CreateProxy(endpoint);      &lt;br /&gt;4. Invoke operations on the DynamicProxy    dobule result = (dobule)proxy.CallMethod(&amp;quot;Add&amp;quot;, 1d ,2d);&lt;br /&gt;5. Close the DynamicProxy    proxy.Close();&lt;br /&gt;To run the example: Compile the solution, run the CalculatorService.exe and then run the CalculatorDynamicClient.exe&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3940';"&gt;WCF WS-Discovery Protocol Implementation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample demonstrates how to use the Windows Communication Foundation to enable run-time discovery of services within ad-hoc networks using the WS-Discovery protocol.  Clients can search for available services based on a Type and/or Scope (Probe), or search based on a specific Endpoint Reference (Resolve).  A matched service will then respond using a ProbeMatch or ResolveMatch, as appropriate.  New services can also announce their arrival on the network (Hello) or declare their departure from the network (Bye).  These operations are defined as part of the WS-Discovery specification.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3395';"&gt;X509 Certificate Tool&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;With this tool, developers can:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;easily inspect their certificate stores, i.e., find matching certificates (by part of their names, “RegEx search”)&lt;/li&gt;&lt;li&gt;easily view cert details, such as all the various key identifier flavors&lt;/li&gt;&lt;li&gt;Use one of the various key identifiers to find a cert (“Crypto value search”)&lt;/li&gt;&lt;li&gt;Scope (with the “Select search location”) in which stores they want to look&lt;/li&gt;&lt;li&gt;View the certificates using the regular UI&lt;/li&gt;&lt;li&gt;View private key properties (Filesystem UI)&lt;/li&gt;&lt;li&gt;Grant the ASPNET user read-only access to the private key (if the key is in LocalMachine). &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Documentation &lt;a name="docs"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=4962';"&gt;WCF Channels Mini Book&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A short book of six chapters that explains the channel model and shows how to build custom channels. The chapters are: &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Introducing WCF Channels: An overview of WCF channels and how they're used. &lt;/li&gt;&lt;li&gt;Channel State Machine: A drill down into the ICommunicationObject state machine and CommunicationObject. &lt;/li&gt;&lt;li&gt;Channels Object Model: A survey of the interfaces and classes that make up the WCF channel model. &lt;/li&gt;&lt;li&gt;Channel Shapes and Sessions: Explains the different channel shapes and the concept of sessions at the channel level. &lt;/li&gt;&lt;li&gt;Exceptions, Faults and Tracing: Some guidance on what exception types to throw, how to treat faults, and how to trace from your custom channels. &lt;/li&gt;&lt;li&gt;Layered Channel Walkthrough: A walkthrough of building a layered protocol channel. The example used is the chunking channel sample. &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3390';"&gt;SBP06-IS_Windows Communication Foundation Performance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck is from TechEd 2007 in Barcelona. The goal of this session was to walk through several of the key points that can improve the performance of your WCF application. The deck starts with some test data (the reward), then progresses from simple tweaks to more invasive ones.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3391';"&gt;SBP401_Architecture of Microsoft Windows Communication Foundation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is the deck from TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. It's a 400 level presentation that describes WCF architecture, with a particular focus on the channel layer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3392';"&gt;T-26-Building Applications and Services with .Net Framework 3.5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This talk covers the web-centric features of WCF in the .NET Framework 3.5. Specifically, it covers the new HTTP API, JSON messaging support, and the new syndication features.&lt;br /&gt;
&lt;/div&gt;</description><author>Endpoint</author><pubDate>Fri, 27 Feb 2009 21:35:42 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: WCF samples 20090227P</guid></item><item><title>UPDATED WIKI: WCF samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF samples&amp;version=7</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
WCF Samples
&lt;/h1&gt;Windows Communication Foundation (formerly code-named &amp;quot;Indigo&amp;quot;) is a set of .NET technologies for building and running connected systems. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3378';"&gt;AzMan Authorization&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to use AzMan for authorization using custom authorization manager. The sample requires the installation of the AzMan component on the machine. For information on how to install AzMan, please see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000019.asp&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3379';"&gt;BizTalk Services Picture Syndication&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to integrate the PictureServices sample with BizTalk Services. It is based on the R10 release of BizTalk Services, and version 1.2 of PictureServices.&lt;br /&gt;Prerequisites: Picture Services 1.2, the BizTalk Services R10 SDK, and an account on BizTalk Services.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3381';"&gt;Credentials per Channel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to configure client credentials on a per-channel basis instead of a per-ChannelFactory basis. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3382';"&gt;CredMan UI - Inside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog inside the sending timeout &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3383';"&gt;CredMan UI - Outside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog outside of the sending timeout using the new RC1 feature - InteractiveChannelInitializers collection &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3384';"&gt;Custom Security Algorithm Suite&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates how one can implement a custom SecurityAlgorithmSuite. In particular, the custom suite implemented in the sample enables a service to enforce a minimum client cert key size of 2048 bits (all WCF SecurityAlgorithmSuites provided out-of-the-box enforce a minimum of 1024 bits). &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3385';"&gt;Custom Token Issuance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to create a custom token and issue a custom token to a client. It also demonstrates using transport security for obtaining security token and issuence of SAML token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3387';"&gt;Logon Token Cache&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to cache the logon token. The sample also shows how to remove an existing token from the cache or flush the token cache completely.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3397';"&gt;Pictures Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Pictures Services is a simple Windows Communication Foundation (WCF) service that is returns pictures from the computer in which the service is being hosted. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3388';"&gt;Reserialize SAML&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 1.1 token to a client. The Client presents the token to a proxy service. The Proxy Service uses the SAML token to secure the message to the real service at the backend. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3389';"&gt;SAML Token&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 2.0 token to a client. Client presents the token to a service. Client code has no custom code to receive and forward a SAML 2.0 token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3393';"&gt;WCF Architecture Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The code samples from the TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3939';"&gt;WCF Dynamic Proxy&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The DynamicProxy allows you to create the dynamic WCF client at runtime by specifying the WSDL URI of the service. The DynamicProxy does not depend on the precompiled proxy or configuration. The DynamicProxy uses the MetadataResolver to download the metadata from the service and WsdlImporter to create the contract and binding at runtime. The compiled dynamic proxy can be used to invoke the operations on the service using reflection.&lt;br /&gt; &lt;br /&gt;The example shows how you can the dynamic proxy to invoke operations that use simple types and complex types. The flow of usage is as following.&lt;br /&gt;1. Create the ProxyFactory specifying the WSDL URI of the service.&lt;br /&gt;    DynamicProxyFactory factory = new DynamicProxyFactory(&amp;quot;http://localhost:8080/WcfSamples/DynamicProxy?wsdl&amp;quot;);&lt;br /&gt;2. Browse the endpoints, metadata, contracts etc.     factory.Endpoints    factory.Metadata    factory.Contracts    factory.Bindings&lt;br /&gt;3. Create DynamicProxy to an endpoint by specifying either the endpoint or    contract name.    DynamicProxy proxy = factory.CreateProxy(&amp;quot;ISimpleCalculator&amp;quot;);&lt;br /&gt;    OR&lt;br /&gt;    DynamicProxy proxy = factory.CreateProxy(endpoint);      &lt;br /&gt;4. Invoke operations on the DynamicProxy    dobule result = (dobule)proxy.CallMethod(&amp;quot;Add&amp;quot;, 1d ,2d);&lt;br /&gt;5. Close the DynamicProxy    proxy.Close();&lt;br /&gt;To run the example: Compile the solution, run the CalculatorService.exe and then run the CalculatorDynamicClient.exe&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3940';"&gt;WCF WS-Discovery Protocol Implementation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample demonstrates how to use the Windows Communication Foundation to enable run-time discovery of services within ad-hoc networks using the WS-Discovery protocol.  Clients can search for available services based on a Type and/or Scope (Probe), or search based on a specific Endpoint Reference (Resolve).  A matched service will then respond using a ProbeMatch or ResolveMatch, as appropriate.  New services can also announce their arrival on the network (Hello) or declare their departure from the network (Bye).  These operations are defined as part of the WS-Discovery specification.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3395';"&gt;X509 Certificate Tool&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;With this tool, developers can:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;easily inspect their certificate stores, i.e., find matching certificates (by part of their names, “RegEx search”)&lt;/li&gt;&lt;li&gt;easily view cert details, such as all the various key identifier flavors&lt;/li&gt;&lt;li&gt;Use one of the various key identifiers to find a cert (“Crypto value search”)&lt;/li&gt;&lt;li&gt;Scope (with the “Select search location”) in which stores they want to look&lt;/li&gt;&lt;li&gt;View the certificates using the regular UI&lt;/li&gt;&lt;li&gt;View private key properties (Filesystem UI)&lt;/li&gt;&lt;li&gt;Grant the ASPNET user read-only access to the private key (if the key is in LocalMachine). &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Documentation &lt;a name="docs"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=4962';"&gt;WCF Channels Mini Book&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A short book of six chapters that explains the channel model and shows how to build custom channels. The chapters are: &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Introducing WCF Channels: An overview of WCF channels and how they're used. &lt;/li&gt;&lt;li&gt;Channel State Machine: A drill down into the ICommunicationObject state machine and CommunicationObject. &lt;/li&gt;&lt;li&gt;Channels Object Model: A survey of the interfaces and classes that make up the WCF channel model. &lt;/li&gt;&lt;li&gt;Channel Shapes and Sessions: Explains the different channel shapes and the concept of sessions at the channel level. &lt;/li&gt;&lt;li&gt;Exceptions, Faults and Tracing: Some guidance on what exception types to throw, how to treat faults, and how to trace from your custom channels. &lt;/li&gt;&lt;li&gt;Layered Channel Walkthrough: A walkthrough of building a layered protocol channel. The example used is the chunking channel sample. &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3390';"&gt;SBP06-IS_Windows Communication Foundation Performance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck is from TechEd 2007 in Barcelona. The goal of this session was to walk through several of the key points that can improve the performance of your WCF application. The deck starts with some test data (the reward), then progresses from simple tweaks to more invasive ones.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3391';"&gt;SBP401_Architecture of Microsoft Windows Communication Foundation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is the deck from TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. It's a 400 level presentation that describes WCF architecture, with a particular focus on the channel layer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3392';"&gt;T-26-Building Applications and Services with .Net Framework 3.5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This talk covers the web-centric features of WCF in the .NET Framework 3.5. Specifically, it covers the new HTTP API, JSON messaging support, and the new syndication features.&lt;br /&gt;
&lt;/div&gt;</description><author>Endpoint</author><pubDate>Fri, 27 Feb 2009 21:34:53 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: WCF samples 20090227P</guid></item><item><title>UPDATED WIKI: WCF samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF samples&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
WCF Samples
&lt;/h1&gt;Windows Communication Foundation (formerly code-named &amp;quot;Indigo&amp;quot;) is a set of .NET technologies for building and running connected systems. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3378';"&gt;AzMan Authorization&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to use AzMan for authorization using custom authorization manager. The sample requires the installation of the AzMan component on the machine. For information on how to install AzMan, please see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000019.asp&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3379';"&gt;BizTalk Services Picture Syndication&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to integrate the PictureServices sample with BizTalk Services. It is based on the R10 release of BizTalk Services, and version 1.2 of PictureServices.&lt;br /&gt;Prerequisites: Picture Services 1.2, the BizTalk Services R10 SDK, and an account on BizTalk Services.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3381';"&gt;Credentials per Channel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to configure client credentials on a per-channel basis instead of a per-ChannelFactory basis. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3382';"&gt;CredMan UI - Inside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog inside the sending timeout &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3383';"&gt;CredMan UI - Outside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog outside of the sending timeout using the new RC1 feature - InteractiveChannelInitializers collection &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3384';"&gt;Custom Security Algorithm Suite&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates how one can implement a custom SecurityAlgorithmSuite. In particular, the custom suite implemented in the sample enables a service to enforce a minimum client cert key size of 2048 bits (all WCF SecurityAlgorithmSuites provided out-of-the-box enforce a minimum of 1024 bits). &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3385';"&gt;Custom Token Issuance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to create a custom token and issue a custom token to a client. It also demonstrates using transport security for obtaining security token and issuence of SAML token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3387';"&gt;Logon Token Cache&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to cache the logon token. The sample also shows how to remove an existing token from the cache or flush the token cache completely.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3397';"&gt;Pictures Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Pictures Services is a simple Windows Communication Foundation (WCF) service that is returns pictures from the computer in which the service is being hosted. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3388';"&gt;Reserialize SAML&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 1.1 token to a client. The Client presents the token to a proxy service. The Proxy Service uses the SAML token to secure the message to the real service at the backend. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3389';"&gt;SAML Token&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 2.0 token to a client. Client presents the token to a service. Client code has no custom code to receive and forward a SAML 2.0 token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3393';"&gt;WCF Architecture Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The code samples from the TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3939';"&gt;WCF Dynamic Proxy&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The DynamicProxy allows you to create the dynamic WCF client at runtime by specifying the WSDL URI of the service. The DynamicProxy does not depend on the precompiled proxy or configuration. The DynamicProxy uses the MetadataResolver to download the metadata from the service and WsdlImporter to create the contract and binding at runtime. The compiled dynamic proxy can be used to invoke the operations on the service using reflection.&lt;br /&gt; &lt;br /&gt;The example shows how you can the dynamic proxy to invoke operations that use simple types and complex types. The flow of usage is as following.&lt;br /&gt;1. Create the ProxyFactory specifying the WSDL URI of the service.&lt;br /&gt;    DynamicProxyFactory factory = new DynamicProxyFactory(&amp;quot;http://localhost:8080/WcfSamples/DynamicProxy?wsdl&amp;quot;);&lt;br /&gt;2. Browse the endpoints, metadata, contracts etc.     factory.Endpoints    factory.Metadata    factory.Contracts    factory.Bindings&lt;br /&gt;3. Create DynamicProxy to an endpoint by specifying either the endpoint or    contract name.    DynamicProxy proxy = factory.CreateProxy(&amp;quot;ISimpleCalculator&amp;quot;);&lt;br /&gt;    OR&lt;br /&gt;    DynamicProxy proxy = factory.CreateProxy(endpoint);      &lt;br /&gt;4. Invoke operations on the DynamicProxy    dobule result = (dobule)proxy.CallMethod(&amp;quot;Add&amp;quot;, 1d ,2d);&lt;br /&gt;5. Close the DynamicProxy    proxy.Close();&lt;br /&gt;To run the example: Compile the solution, run the CalculatorService.exe and then run the CalculatorDynamicClient.exe&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3940';"&gt;WCF WS-Discovery Protocol Implementation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample demonstrates how to use the Windows Communication Foundation to enable run-time discovery of services within ad-hoc networks using the WS-Discovery protocol.  Clients can search for available services based on a Type and/or Scope (Probe), or search based on a specific Endpoint Reference (Resolve).  A matched service will then respond using a ProbeMatch or ResolveMatch, as appropriate.  New services can also announce their arrival on the network (Hello) or declare their departure from the network (Bye).  These operations are defined as part of the WS-Discovery specification.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3395';"&gt;X509 Certificate Tool&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;With this tool, developers can:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;easily inspect their certificate stores, i.e., find matching certificates (by part of their names, “RegEx search”)&lt;/li&gt;&lt;li&gt;easily view cert details, such as all the various key identifier flavors&lt;/li&gt;&lt;li&gt;Use one of the various key identifiers to find a cert (“Crypto value search”)&lt;/li&gt;&lt;li&gt;Scope (with the “Select search location”) in which stores they want to look&lt;/li&gt;&lt;li&gt;View the certificates using the regular UI&lt;/li&gt;&lt;li&gt;View private key properties (Filesystem UI)&lt;/li&gt;&lt;li&gt;Grant the ASPNET user read-only access to the private key (if the key is in LocalMachine). &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3390';"&gt;SBP06-IS_Windows Communication Foundation Performance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck is from TechEd 2007 in Barcelona. The goal of this session was to walk through several of the key points that can improve the performance of your WCF application. The deck starts with some test data (the reward), then progresses from simple tweaks to more invasive ones.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3391';"&gt;SBP401_Architecture of Microsoft Windows Communication Foundation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is the deck from TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. It's a 400 level presentation that describes WCF architecture, with a particular focus on the channel layer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3392';"&gt;T-26-Building Applications and Services with .Net Framework 3.5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This talk covers the web-centric features of WCF in the .NET Framework 3.5. Specifically, it covers the new HTTP API, JSON messaging support, and the new syndication features.&lt;br /&gt;
&lt;/div&gt;</description><author>KSharkey</author><pubDate>Wed, 26 Nov 2008 02:12:26 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: WCF samples 20081126A</guid></item><item><title>UPDATED WIKI: WCF samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF samples&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
WCF Samples
&lt;/h1&gt;Windows Communication Foundation (formerly code-named &amp;quot;Indigo&amp;quot;) is a set of .NET technologies for building and running connected systems. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3378';"&gt;AzMan Authorization&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to use AzMan for authorization using custom authorization manager. The sample requires the installation of the AzMan component on the machine. For information on how to install AzMan, please see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000019.asp&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3379';"&gt;BizTalk Services Picture Syndication&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to integrate the PictureServices sample with BizTalk Services. It is based on the R10 release of BizTalk Services, and version 1.2 of PictureServices.&lt;br /&gt;Prerequisites: Picture Services 1.2, the BizTalk Services R10 SDK, and an account on BizTalk Services.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3381';"&gt;Credentials per Channel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to configure client credentials on a per-channel basis instead of a per-ChannelFactory basis. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3382';"&gt;CredMan UI - Inside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog inside the sending timeout &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3383';"&gt;CredMan UI - Outside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog outside of the sending timeout using the new RC1 feature - InteractiveChannelInitializers collection &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3384';"&gt;Custom Security Algorithm Suite&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates how one can implement a custom SecurityAlgorithmSuite. In particular, the custom suite implemented in the sample enables a service to enforce a minimum client cert key size of 2048 bits (all WCF SecurityAlgorithmSuites provided out-of-the-box enforce a minimum of 1024 bits). &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3385';"&gt;Custom Token Issuance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to create a custom token and issue a custom token to a client. It also demonstrates using transport security for obtaining security token and issuence of SAML token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3387';"&gt;Logon Token Cache&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to cache the logon token. The sample also shows how to remove an existing token from the cache or flush the token cache completely.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3397';"&gt;Pictures Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Pictures Services is a simple Windows Communication Foundation (WCF) service that is returns pictures from the computer in which the service is being hosted. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3388';"&gt;Reserialize SAML&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 1.1 token to a client. The Client presents the token to a proxy service. The Proxy Service uses the SAML token to secure the message to the real service at the backend. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3389';"&gt;SAML Token&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 2.0 token to a client. Client presents the token to a service. Client code has no custom code to receive and forward a SAML 2.0 token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3393';"&gt;WCF Architecture Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The code samples from the TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3939';"&gt;WCF Dynamic Proxy&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The DynamicProxy allows you to create the dynamic WCF client at runtime by specifying the WSDL URI of the service. The DynamicProxy does not depend on the precompiled proxy or configuration. The DynamicProxy uses the MetadataResolver to download the metadata from the service and WsdlImporter to create the contract and binding at runtime. The compiled dynamic proxy can be used to invoke the operations on the service using reflection.&lt;br /&gt; &lt;br /&gt;The example shows how you can the dynamic proxy to invoke operations that use simple types and complex types. The flow of usage is as following.&lt;br /&gt;1. Create the ProxyFactory specifying the WSDL URI of the service.&lt;br /&gt;    DynamicProxyFactory factory = new DynamicProxyFactory(&amp;quot;http://localhost:8080/WcfSamples/DynamicProxy?wsdl&amp;quot;);&lt;br /&gt;2. Browse the endpoints, metadata, contracts etc.     factory.Endpoints    factory.Metadata    factory.Contracts    factory.Bindings&lt;br /&gt;3. Create DynamicProxy to an endpoint by specifying either the endpoint or    contract name.    DynamicProxy proxy = factory.CreateProxy(&amp;quot;ISimpleCalculator&amp;quot;);&lt;br /&gt;    OR&lt;br /&gt;    DynamicProxy proxy = factory.CreateProxy(endpoint);      &lt;br /&gt;4. Invoke operations on the DynamicProxy    dobule result = (dobule)proxy.CallMethod(&amp;quot;Add&amp;quot;, 1d ,2d);&lt;br /&gt;5. Close the DynamicProxy    proxy.Close();&lt;br /&gt;To run the example: Compile the solution, run the CalculatorService.exe and then run the CalculatorDynamicClient.exe&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3940';"&gt;WCF WS-Discovery Protocol Implementation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt; &lt;br /&gt;This sample demonstrates how to use the Windows Communication Foundation to enable run-time discovery of services within ad-hoc networks using the WS-Discovery protocol.  Clients can search for available services based on a Type and/or Scope (Probe), or search based on a specific Endpoint Reference (Resolve).  A matched service will then respond using a ProbeMatch or ResolveMatch, as appropriate.  New services can also announce their arrival on the network (Hello) or declare their departure from the network (Bye).  These operations are defined as part of the WS-Discovery specification.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3395';"&gt;X509 Certificate Tool&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;With this tool, developers can:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;easily inspect their certificate stores, i.e., find matching certificates (by part of their names, “RegEx search”)&lt;/li&gt;&lt;li&gt;easily view cert details, such as all the various key identifier flavors&lt;/li&gt;&lt;li&gt;Use one of the various key identifiers to find a cert (“Crypto value search”)&lt;/li&gt;&lt;li&gt;Scope (with the “Select search location”) in which stores they want to look&lt;/li&gt;&lt;li&gt;View the certificates using the regular UI&lt;/li&gt;&lt;li&gt;View private key properties (Filesystem UI)&lt;/li&gt;&lt;li&gt;Grant the ASPNET user read-only access to the private key (if the key is in LocalMachine). &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3390';"&gt;SBP06-IS_Windows Communication Foundation Performance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck is from TechEd 2007 in Barcelona. The goal of this session was to walk through several of the key points that can improve the performance of your WCF application. The deck starts with some test data (the reward), then progresses from simple tweaks to more invasive ones.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3391';"&gt;SBP401_Architecture of Microsoft Windows Communication Foundation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is the deck from TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. It's a 400 level presentation that describes WCF architecture, with a particular focus on the channel layer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3392';"&gt;T-26-Building Applications and Services with .Net Framework 3.5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This talk covers the web-centric features of WCF in the .NET Framework 3.5. Specifically, it covers the new HTTP API, JSON messaging support, and the new syndication features.&lt;br /&gt;
&lt;/div&gt;</description><author>KSharkey</author><pubDate>Wed, 26 Nov 2008 02:12:00 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: WCF samples 20081126A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=17</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3877';"&gt;Active Directory Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Active Directories can be used to get/set information in AD. The following Activities are in the bundle:&lt;br /&gt;- GetUserByLogonName&lt;br /&gt;- GetADPropertyValue&lt;br /&gt;- SetADPropertyValue&lt;br /&gt;- GetGroupByAlias&lt;br /&gt;- GetDirectoryEntry&lt;br /&gt;- SetPassword&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3883';"&gt;Amazon Web Service Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Amazon Web Services Activity Library consists of two activities: &lt;br /&gt;- AmazonSearch activity - Used to search for items on the Amazon.com site &lt;br /&gt;- AmazonLookup activity - used to get details about a specific item These activities also demonstrate how to implement a custom ActivityDesigner. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3878';"&gt;Create Excel Spreadsheet Activity (Excel 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity creates an Excel spreadsheet.&amp;nbsp; This was inspired by Doug Mahugh's &amp;quot;CreateXlsx Sample Program&amp;quot;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3879';"&gt;Create Word Document Activity (Word 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity will let you create a Word document within your workflow.&amp;nbsp; This activity was inspired by technical evangelist Doug Mahugh's &amp;quot;CreateDOCX sample program&amp;quot;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3889';"&gt;Custom Activity Framework&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Custom Activity Framework is a set of classes that simplify the development of custom activities. In this first version the base classes are designed for building activities that need to listen for external events. Examples of external events might be a file being created on the local file system, data being received in a queue, or the asynchronous completion of a web service call. To demonstrate how the base classes can be used, this package includes the FileSystemEvent activity that derives from the InputActivity base class in the Custom Activity Framework. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3886';"&gt;Dynamic Code Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Want to use something like the &amp;quot;Code&amp;quot; Activity, but maybe you want to pass your code in on the fly.&amp;nbsp; Maybe you are re-hosting the designer, and in some scenarios you want advanced users to be able to write &amp;quot;Just that one little bit of code.&amp;quot;&amp;nbsp; Vittorio has put together a sample activity that does just that.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3880';"&gt;Enhanced SQL Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Sent in by Trevor and the fine folks at NailSoup.&lt;br /&gt;This is an enhanced version of the Sql Activity posted elsewhere on this site.&lt;br /&gt;Issues fixed in this release are the following:&lt;br /&gt;- Ability to change the connection string in the CommandExecuting event.&lt;br /&gt;- Ability to handle a return value from the stored procedure.&lt;br /&gt;- Improved stability if the connection string is invalid at design time.&lt;br /&gt;- Issues I know of, but haven't had time to fix are:&lt;br /&gt; &lt;br /&gt;The activity needs a hard-coded connection string at design time in order to understand stored procedure parameters. &lt;br /&gt;If you change the parameters of a stored procedure at design time, the activity often &amp;quot;remembers&amp;quot; parameters that no longer exist. It is really hard to get rid of these without deleting the activity and starting again. The activity doesn't handle output parameters. It thinks they are all input parameters.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3884';"&gt;eBay Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The EBayGetCategories activity can be used to browse EBay’s product categories through EBay’s exposed web services. The EBayListItem activity can be used to post an item for sale. The EBayGetSellerList activity can be used to list the items a seller has for sale. These activities also demonstrate how to implement a custom ActivityDesigner. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3881';"&gt;File System Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The FileSystem activity can be used to perform File system operations/commands. This is a basic activity that uses the System.IO components to perform File system operations/commands at runtime. The FileSystem activity also demonstrates how to implement a custom ActivityDesigner, ActivityValidator, and UITypeEditor. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3887';"&gt;File System Watcher Activity for June CTP&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The FileSystemEvent activity is designed to monitor a specified folder on the local file system for an event occurring to a file. An event might include the file being created, modified, renamed, or deleted. This version of the FileSystemEvent activity is an enhanced version of the sample in the Windows Workflow Foundation SDK. This version is designed to use the InputActivity base class in the CustomActivityFramework, which simplifies the development of event-based activities. This version of the FileSystemEvent also provides a custom designer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3885';"&gt;MSN Search Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The MSNSearch activity is designed to execute a web search against MSN’s public search web service. The activity simply calls the web service within the Execute method of the activity. Before you can use this activity, you will need to create an MSN Application Id. Follow these steps to create an Application ID from the MSN Search Web Service Developer Provisioning System: &lt;br /&gt;- Point your browser to http://search.msn.com/developer. &lt;br /&gt;- Click Create and Manage Application IDs. &lt;br /&gt;- Sign in to the Passport Network. If you do not have a Passport, click Sign Up to create one. Passport authentication is required to use the Developer Provisioning System. &lt;br /&gt;- Once you're signed in, click Get a new App ID to create a new Application ID for your application. &lt;br /&gt;- Type a friendly name for your application in the Application Name text box. &lt;br /&gt;- Read the Terms of Use and click I Accept to agree to these terms. If you do not agree to the Terms of Use, click I Do Not Accept. The Application ID that appears on the page will not be activated if you choose not to accept the Terms of Use. &lt;br /&gt;- Once you've accepted the Terms of Use, you can now assign the Application ID to the AppId property of the MSNSearch activity. If you’re using the sample workflow included in the WorkflowConsoleApplication1 project, then simply copy the Application ID and paste it into the App.Config file. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3882';"&gt;Network Availability Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;&amp;nbsp;The NetworkActivities activity library contains two activities that are used to check and monitor network connectivity. These activities are wrappers on top of the classes provided in the System.Net.NetworkInformation namespace. These activities include: &lt;br /&gt;GetNetworkAvailabilityActivity – Simple returns whether or not network connectivity is available. &lt;br /&gt;NetworkAvailabilityActivity – Event-based activity that monitors network connectivity changes. This activity has two modes. It can either block until the network is available or it can close after receiving any event (connected or disconnected). The NetworkAvailabilityActivity uses the InputActivity base class in the CustomActivityFramework, which simplifies the development of custom, event-based activities. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3888';"&gt;WMI Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The WMI Activities are event-based activities that monitor WMI events on the local machine. There are two different sets of WMIActivities. The WMIActivities project/assembly contains a WMIEvent activity class, which can be configured to listen to any WMI event. This activity derives from the InputActivity in the CustomActivityFramework, which provides the underly logic for building an event-based activity that uses queues. Instead of configuring the activity every time it is used in a workflow, you may want to have typed versions that represent specific WMI events. The WMIActivities.Common project/assembly contains a couple examples of typed activities. These examples include: &lt;br /&gt;- ProcessEventActivity - monitors processes being created on the local system. &lt;br /&gt;- EventLogEntryCreatedActivity – monitors the application event log for new records. However, these are just two example typed WMI event activities. There are numerous events that can be monitored through WMI by using the base WMIEvent activity. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:36:49 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=16</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3877';"&gt;Active Directory Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Active Directories can be used to get/set information in AD. The following Activities are in the bundle:&lt;br /&gt;- GetUserByLogonName&lt;br /&gt;- GetADPropertyValue&lt;br /&gt;- SetADPropertyValue&lt;br /&gt;- GetGroupByAlias&lt;br /&gt;- GetDirectoryEntry&lt;br /&gt;- SetPassword&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3883';"&gt;Amazon Web Service Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Amazon Web Services Activity Library consists of two activities: &lt;br /&gt;- AmazonSearch activity - Used to search for items on the Amazon.com site &lt;br /&gt;- AmazonLookup activity - used to get details about a specific item These activities also demonstrate how to implement a custom ActivityDesigner. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3878';"&gt;Create Excel Spreadsheet Activity (Excel 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity creates an Excel spreadsheet.&amp;nbsp; This was inspired by Doug Mahugh's &amp;quot;CreateXlsx Sample Program&amp;quot;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3879';"&gt;Create Word Document Activity (Word 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity will let you create a Word document within your workflow.&amp;nbsp; This activity was inspired by technical evangelist Doug Mahugh's &amp;quot;CreateDOCX sample program&amp;quot;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3880';"&gt;Enhanced SQL Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Sent in by Trevor and the fine folks at NailSoup.&lt;br /&gt;This is an enhanced version of the Sql Activity posted elsewhere on this site.&lt;br /&gt;Issues fixed in this release are the following:&lt;br /&gt;- Ability to change the connection string in the CommandExecuting event.&lt;br /&gt;- Ability to handle a return value from the stored procedure.&lt;br /&gt;- Improved stability if the connection string is invalid at design time.&lt;br /&gt;- Issues I know of, but haven't had time to fix are:&lt;br /&gt; &lt;br /&gt;The activity needs a hard-coded connection string at design time in order to understand stored procedure parameters. &lt;br /&gt;If you change the parameters of a stored procedure at design time, the activity often &amp;quot;remembers&amp;quot; parameters that no longer exist. It is really hard to get rid of these without deleting the activity and starting again. The activity doesn't handle output parameters. It thinks they are all input parameters.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3881';"&gt;File System Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The FileSystem activity can be used to perform File system operations/commands. This is a basic activity that uses the System.IO components to perform File system operations/commands at runtime. The FileSystem activity also demonstrates how to implement a custom ActivityDesigner, ActivityValidator, and UITypeEditor. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3882';"&gt;Network Availability Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;&amp;nbsp;The NetworkActivities activity library contains two activities that are used to check and monitor network connectivity. These activities are wrappers on top of the classes provided in the System.Net.NetworkInformation namespace. These activities include: &lt;br /&gt;GetNetworkAvailabilityActivity – Simple returns whether or not network connectivity is available. &lt;br /&gt;NetworkAvailabilityActivity – Event-based activity that monitors network connectivity changes. This activity has two modes. It can either block until the network is available or it can close after receiving any event (connected or disconnected). The NetworkAvailabilityActivity uses the InputActivity base class in the CustomActivityFramework, which simplifies the development of custom, event-based activities. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:19:47 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=15</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3877';"&gt;Active Directory Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Active Directories can be used to get/set information in AD. The following Activities are in the bundle:&lt;br /&gt;- GetUserByLogonName&lt;br /&gt;- GetADPropertyValue&lt;br /&gt;- SetADPropertyValue&lt;br /&gt;- GetGroupByAlias&lt;br /&gt;- GetDirectoryEntry&lt;br /&gt;- SetPassword&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3878';"&gt;Create Excel Spreadsheet Activity (Excel 2007)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Using the Open XML document specification, this activity creates an Excel spreadsheet.&amp;nbsp; This was inspired by Doug Mahugh's &amp;quot;CreateXlsx Sample Program&amp;quot;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:09:55 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=14</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3877';"&gt;Active Directory Activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The Active Directories can be used to get/set information in AD. The following Activities are in the bundle:&lt;br /&gt;- GetUserByLogonName&lt;br /&gt;- GetADPropertyValue&lt;br /&gt;- SetADPropertyValue&lt;br /&gt;- GetGroupByAlias&lt;br /&gt;- GetDirectoryEntry&lt;br /&gt;- SetPassword&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:08:03 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=13</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3876';"&gt;WF Workflow WebPage activities&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Package includes WebPage&amp;nbsp;Request/Response custom activities:&lt;br /&gt;- WebPageRequest&lt;br /&gt;- WebPageResponse&lt;br /&gt;- WebPageTransfer&lt;br /&gt;- WebPageRedirect&lt;br /&gt;These activities will help integrate Workflow technology into your ASP.NET projects. Just derive your ASP.NET page from &amp;quot;WorkflowPage&amp;quot; and indicate which workflow to use. &lt;br /&gt;Features:&lt;br /&gt;- integration with Http Request/Response, ability to expose Http parameters in Workflow designer, ability to &amp;quot;Activity Bind&amp;quot; and use them in rules/condition expressions.&lt;br /&gt;- integration with ASP.NET WebControls and data binding sample&lt;br /&gt;- ability to use in both Sequential and StateMachine Workflows&lt;br /&gt;- includes extensible examples of workflow driven authentication procedure, Sequential Page Navigation combined with&amp;nbsp;EventHandlingScope and a StateMachine based search engine prototype.&lt;br /&gt;&amp;nbsp;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:05:48 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=12</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3875';"&gt;For Each Activity&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;The ForEach activity takes an IEnumerable as input and upon activation it executes the body of the activity once for each item in the enumerator. If a child activity is added to the ForEach activity, a new instance of the child activity is created and executed in every loop. Each instance of the child activity goes through the entire Initialized -&amp;gt; Executing -&amp;gt; Closed life cycle and is removed from the execution context when the loop completes. The ForEach activity also provides a custom activity designer that inherits from the SequentialActivityDesigner. It is different from the SequentialActivityDesigner in two ways. First, it draws a looping arrow from the bottom of the designer to the top indicating that the execution would loop around. Second, it restricts that only one child activity can be dropped into the designer thus enforce the single child rule. There are two projects included in the download. One is the ForEachActivity project which contains the implementation of the ForEach custom activity. The other is the ForEachActivityTestWorkflow project which contains a workflow that uses the ForEach activity and a simple host to run the workflow. The ForEachActivity project must be built once before the activity can show up in the design surface of the workflow. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:02:51 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=11</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3874';"&gt;Custom WF Designer and Debugger&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;Combining the designer re-hosting hands on lab with a custom tracking service, Vittorio has a demo written up that shows how you can &amp;quot;debug&amp;quot; a workflow instance inside of a Windows Forms application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 05:01:05 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=10</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that is given during WF talks that covers how the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:51:09 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=9</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3873';"&gt;Tracking Objects Sample&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;A sample that I like to give during WF talks is that the tracking service can be used to track things at an event level (&amp;quot;Workflow started&amp;quot;) as well as things at a very granular level (&amp;quot;What is the Purchase Order amount?&amp;quot;).&amp;nbsp; &lt;br /&gt;I wanted to put together a sample showing these, and you can find the file on netfx3.com.&amp;nbsp; &lt;br /&gt;In order to track things, we first need to specify the tracking profile.&amp;nbsp; This tells the workflow runtime which events and pieces of data we are interested in collecting while the workflow executes.&amp;nbsp; I think that the xml representation of the tracking profile is pretty readable, but there is a tool that ships in the Windows SDK designed to make this even easier.&amp;nbsp; The tool can be found after extracting the workflow samples to a directory under \Technologies\Applications\TrackingProfileDesigner.&amp;nbsp; This tool will let you open up a workflow by pointing at its containing assembly and then design a tracking profile.&amp;nbsp; It will deploy the tracking profile to the database for you, but I borrowed some code from another sample that shows the same functionality.&amp;nbsp; The tool allows you to specify workflow level events as well as activity level events, and allows you to designate what information you would want to extract and specify the annotation as well.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:50:03 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=8</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3872';"&gt;WF Workflow Manager (tracking/dynamic updates sample)&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;This application demonstrates how one can &lt;br /&gt;1) enumerate and show to a user a list of live (currently executing) or tracked (executed in the past)&lt;br /&gt;2) show current state of a workflow&lt;br /&gt;3) control a workflow (suspend/resume/terminate)&lt;br /&gt;4) change a worklfow from the UI&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:39:14 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=7</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service. More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:30:56 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;*&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3871';"&gt;WF Windows Service Hosting&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;System.Windows.Forms.Label, Text: dennispi has thrown together a nice sample which shows how you can host a workflow inside of a windows service.&lt;br /&gt;More details available on his website &lt;a href="http://www.dennispi.com/?p=104" class="externalLink"&gt;here&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:20:13 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Workflow samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow samples&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
Windows Workflow Foudation (WF) Samples
&lt;/h1&gt;Windows Workflow Foundation is a part of the .NET Framework 3.0 (and 3.5) that enables developers to create workflow enabled applications. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#books"&gt;Book excerpts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Books &lt;a name="books"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3360';"&gt;Essential Windows Workflow Foundation chapter 3&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is chapter 3, focusing on activities.&lt;br /&gt;&lt;a href="www.awprofessional.com/title/0321399838" class="externalLink"&gt;Essential Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Dharma Shukla, Bob Schmidt&lt;br /&gt;Published by Addison-Wesley Professional&lt;br /&gt;ISBN: 0321399838; Published: 10/13/2006;&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3345';"&gt;Professional WF Chapter 6&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This 40-page chapter focuses on activities and activity development.&lt;br /&gt;&lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Windows-Workflow-Foundation.productCd-0470053860.html" class="externalLink"&gt;Professional Windows Workflow Foundation&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; by Todd Kitta&lt;br /&gt;Published by Wrox&lt;br /&gt;ISBN: 9780470053867; Published: March 2007;&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3336';"&gt;Creating rules using the object model&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to use the Windows Workflow Foundation (WF) Rules Object Model to create Rules directly using the APIs without using the designers.  The rules created are then executed by the WF Rules Engine. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3337';"&gt;Custom rule actions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how custom rule actions (derived from the RuleAction Type) can be defined and used in the Windows Workflow Foundation rules engine.  Three sample rule actions are provided which demonstrate how to perform the following actions from a rule:&lt;br /&gt;&lt;ol&gt;
&lt;li&gt;Write text to the console&lt;/li&gt;&lt;li&gt;Execute a RuleSet&lt;/li&gt;&lt;li&gt;Queue an activity for execution&lt;/li&gt;
&lt;/ol&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3338';"&gt;Custom rule expressions&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows the definition and use of a custom expression in the Windows Workflow Foundation rules engine.  Custom expressions are used to model specific predicate types or functions and can be used directly in the rules object model and editors&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3339';"&gt;External ruleset toolkit&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample was put together by the rules team to illustrate how rules can be externalized outside the workflow and live inside a SQL server.  This also shows how to rehost the rules designer, and execute the rule set outside of a WF. &lt;br /&gt; &lt;br /&gt;*&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3340';"&gt;Hosting Workflows in Windows Services&lt;/a&gt;&lt;br /&gt;Sample which shows how you can host a workflow inside of a windows service.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3343';"&gt;Policy from file&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The custom PolicyFromFile activity can be used in any workflow project. At design time, the policy activity will read from a specified rules file, or if no .rules was defined, a default .rules file with the same name as the workflow file will be created. In order to define a .rules file, set the RulesFileName property to the .rules file you want to use. The property can be found when you add the policy activity to your workflow and select Properties from the context menu.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3344';"&gt;Processing XML in rules&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how the WF Rules Engine can be used to process rules on Xml Documents.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3346';"&gt;Rules-driven pageflow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the NetFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Web application. In this sample we will show the stand alone functionality of rules in driving the page flow for a simple ASP.NET application.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3347';"&gt;Rules-driven UI&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Windows Workflow Foundation (WF) offers rules capabilities to the WinFx developer platform. RuleSets are collection of business rules with conditions and actions and they can be executed on any target object such as a Windows Form. In this sample we will demonstrate this capability by using rulesets to pre-populate fields, do cross validation and various calculations on a target Windows Form. We will also show rules features such as forward chaining in this sample. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3348';"&gt;Ruleset analyzer&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample uses the rules object model to analyze dependencies and execution plans for a ruleset.  This is a useful sample to debug and diagnose a complex ruleset. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3349';"&gt;Rules in Excel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how you can use Visual Studio 2008 to create an Excel application that allows you to edit and define your rules inside of Excel. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3350';"&gt;Rules with collection&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates the execution of rulesets against a collection of objects.  This makes use of the techniques outlined in the Windows SDK documentation filed in the &lt;a href="http://windowssdk.msdn.microsoft.com/en-us/library/aa349356.aspx" class="externalLink"&gt;Processing Collections&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.  &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3354';"&gt;WF Hands-On Lab-VB&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;A version of the hands on labs (HOL) for Windows Workflow Foundation that are written using VB.NET.  This lab are identical to the C# versions available here.  This contains the first three labs. They are suitable for the RTM version of Windows Workflow Foundation. The C# labs are also suitable for the RTM version even though the C# version currently specifies RC.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3871';"&gt;WF Windows Service Hosting&lt;/a&gt;&lt;/b&gt; &lt;br /&gt;System.Windows.Forms.Label, Text: dennispi has thrown together a nice sample which shows how you can host a workflow inside of a windows service.&lt;br /&gt;More details available on his website here.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3356';"&gt;U-Serve Product Derby&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The UServ Product Derby is an end-to-end scenario sample based on the UServ Product Derby Case Study used at the Business Rules Forum. In this sample, the WF Rules Engine is used to model the rules for some key scenarios in this case study and perform the processes in the company such as -&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Verification and approval of a new client application&lt;/li&gt;&lt;li&gt;Determine the eligibility of a client to obtain vehicle insurance&lt;/li&gt;&lt;li&gt;Determine the Premium for Vehicle Insurance&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3341';"&gt;Building WF-Powered Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is a basic presentation I use for introducing the WF-WCF integration in the .NET 3.5. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3351';"&gt;What is the context of this conversation?&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The .NET Framework 3.5 will introduce the functionality to call services from Windows Workflow Foundation (WF), and to expose workflows as a Windows Communication Foundation (WCF) service. A common pattern is to have a workflow serve as the coordinator between a number of other processes (including workflows). This talk will discuss how these conversations are implemented in WF, and common patterns for conversing over a long period of time, including asynchronous messaging, long-running cancellable work, managing m-of-n responses and check pointing of progress.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3352';"&gt;Demonstrating the New WF/WCF Content in Orcas with DinnerNow&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck walks through a number of the new features for WF and WCF in the .NET Framework 3.5 including:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;WF/WCF Integration&lt;/li&gt;&lt;li&gt;Syndication&lt;/li&gt;&lt;li&gt;JSON encoding for WCF&lt;/li&gt;&lt;li&gt;HTTP Programming Model&lt;/li&gt;&lt;li&gt;Partial Trust for WCF&lt;/li&gt;
&lt;/ul&gt;This is discussed within the context of the DinnerNow demo.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3358';"&gt;WF Building Activities&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introductory deck on the idea behind activities and developing them &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3359';"&gt;WF Rules Use and Extensibility&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;An introduction to developing using the rules engine inside Windows Workflow Foundation, including a tour of the programmatic extensibility mechanisms. &lt;br /&gt;
&lt;/div&gt;</description><author>CSimpkins</author><pubDate>Sat, 22 Nov 2008 04:19:10 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Workflow samples 20081122A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Home&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Resource Page Description&lt;/b&gt;&lt;br /&gt;This Code Gallery project contains the samples and source code that had previously been hosted on the NetFX3 website. The NetFX3 website samples covered the Windows Workflow Foundation &amp;#40;WF&amp;#41;, Windows Communication Foundation &amp;#40;WCF&amp;#41;, Windows Presentation Foundation &amp;#40;WPF&amp;#41;, and Windows Cardspace technologies. This is a selected subset of code samples that were authored by Microsoft for the WCF and WF technologies.&lt;br /&gt;&lt;br /&gt;&amp;#42;Note&amp;#42;&amp;#58; Some of these samples were created with Beta versions of the .NET Framework, and may require code changes to work properly. 
&lt;br /&gt; &lt;br /&gt;The samples fall under the following categories:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF%20samples&amp;amp;referringTitle=Home"&gt;WCF samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Workflow%20samples&amp;amp;referringTitle=Home"&gt;Workflow samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=Cross%20technology%20samples&amp;amp;referringTitle=Home"&gt;Cross technology samples&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>Endpoint</author><pubDate>Thu, 09 Oct 2008 03:15:45 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20081009A</guid></item><item><title>UPDATED WIKI: WCF samples</title><link>http://code.msdn.microsoft.com/netfxsamples/Wiki/View.aspx?title=WCF samples&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;
WCF Samples
&lt;/h1&gt;Windows Communication Foundation (formerly code-named &amp;quot;Indigo&amp;quot;) is a set of .NET technologies for building and running connected systems. This section contains articles, samples and presentations on this technology.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#techsamples"&gt;Technology samples&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#presentations"&gt;Presentations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Technology Samples &lt;a name="techsamples"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3378';"&gt;AzMan Authorization&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to use AzMan for authorization using custom authorization manager. The sample requires the installation of the AzMan component on the machine. For information on how to install AzMan, please see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000019.asp&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3379';"&gt;BizTalk Services Picture Syndication&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample shows how to integrate the PictureServices sample with BizTalk Services. It is based on the R10 release of BizTalk Services, and version 1.2 of PictureServices.&lt;br /&gt;Prerequisites: Picture Services 1.2, the BizTalk Services R10 SDK, and an account on BizTalk Services.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3381';"&gt;Credentials per Channel&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to configure client credentials on a per-channel basis instead of a per-ChannelFactory basis. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3382';"&gt;CredMan UI - Inside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog inside the sending timeout &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3383';"&gt;CredMan UI - Outside Timeout&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to pop-up the CredMan UI to obtain username and password using custom client credentials. This sample displays the CredMan dialog outside of the sending timeout using the new RC1 feature - InteractiveChannelInitializers collection &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3384';"&gt;Custom Security Algorithm Suite&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This sample illustrates how one can implement a custom SecurityAlgorithmSuite. In particular, the custom suite implemented in the sample enables a service to enforce a minimum client cert key size of 2048 bits (all WCF SecurityAlgorithmSuites provided out-of-the-box enforce a minimum of 1024 bits). &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3385';"&gt;Custom Token Issuance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to create a custom token and issue a custom token to a client. It also demonstrates using transport security for obtaining security token and issuence of SAML token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3387';"&gt;Logon Token Cache&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Shows how to enable server to cache the logon token. The sample also shows how to remove an existing token from the cache or flush the token cache completely.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3397';"&gt;Pictures Services&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;Pictures Services is a simple Windows Communication Foundation (WCF) service that is returns pictures from the computer in which the service is being hosted. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3388';"&gt;Reserialize SAML&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 1.1 token to a client. The Client presents the token to a proxy service. The Proxy Service uses the SAML token to secure the message to the real service at the backend. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3389';"&gt;SAML Token&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;STS issues a SAML 2.0 token to a client. Client presents the token to a service. Client code has no custom code to receive and forward a SAML 2.0 token. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3393';"&gt;WCF Architecture Code&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;The code samples from the TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. &lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3395';"&gt;X509 Certificate Tool&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;With this tool, developers can:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;easily inspect their certificate stores, i.e., find matching certificates (by part of their names, “RegEx search”)&lt;/li&gt;&lt;li&gt;easily view cert details, such as all the various key identifier flavors&lt;/li&gt;&lt;li&gt;Use one of the various key identifiers to find a cert (“Crypto value search”)&lt;/li&gt;&lt;li&gt;Scope (with the “Select search location”) in which stores they want to look&lt;/li&gt;&lt;li&gt;View the certificates using the regular UI&lt;/li&gt;&lt;li&gt;View private key properties (Filesystem UI)&lt;/li&gt;&lt;li&gt;Grant the ASPNET user read-only access to the private key (if the key is in LocalMachine). &lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h2&gt;
Presentations &lt;a name="presentations"&gt;&lt;/a&gt;
&lt;/h2&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3390';"&gt;SBP06-IS_Windows Communication Foundation Performance&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This deck is from TechEd 2007 in Barcelona. The goal of this session was to walk through several of the key points that can improve the performance of your WCF application. The deck starts with some test data (the reward), then progresses from simple tweaks to more invasive ones.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3391';"&gt;SBP401_Architecture of Microsoft Windows Communication Foundation&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This is the deck from TechEd 2007 Barcelona session titled: &amp;quot;SBP401 - Architecture of Microsoft Windows Communication Foundation and Common Extensibility Points&amp;quot;. It's a 400 level presentation that describes WCF architecture, with a particular focus on the channel layer.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;&lt;a href="javascript:window.location.href='http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=netfxsamples&amp;amp;DownloadId=3392';"&gt;T-26-Building Applications and Services with .Net Framework 3.5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;This talk covers the web-centric features of WCF in the .NET Framework 3.5. Specifically, it covers the new HTTP API, JSON messaging support, and the new syndication features.&lt;br /&gt;
&lt;/div&gt;</description><author>Endpoint</author><pubDate>Thu, 09 Oct 2008 03:15:30 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: WCF samples 20081009A</guid></item></channel></rss>