Blog of Petar Vucetin, containing my thoughts, comments and questions. RSS Feed TwitterDiigoFacebookFriendfeed


7 Hidden Gems - tools for everyday WCF / WF developers

WCF, WF and CardSpace Samples is a treasure throve of samples for WCF and WF. In these samples there are five hidden tools you should know about. Also, in well hidden folder under Microsoft SDKs there are two incredibly useful tools for your every day WCF developer.

 

WCF Tools

WCF Service and Client Configuration editor

Location: C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\SvcConfigEditor.exe

What is it for: Nice and easy way to edit your WCF configuration files.

You can run this tool either from the location above or from Visual Studio. In VS its located under Tools menu. If you have your project setup correctly you could just right click any .config file to start editing.

image

 

WCF Service Log Viewer

Location: C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\SvcTraceViewer.exe

What is it for: Reviewing the trace logs from WCF service.

Using the WCF Configuration editor open up the Diagnostics folder. You can find bunch of knobs to turn on service tracing.

image

 

Custom Binding Configuration Code Generator

Location: \WCF_WF_CardSpace_Samples\WCF\Tools\ConfigurationCodeGenerator

What is it for: It generates all necessary plumbing for custom bindings.

If you are into writing custom bindings this tools is a must. Custom bindings are plugged in via the <extensions> element in the <system.serviceModel> element.

<extensions>
  <bindingElementExtensions>
    <add name="udpTransport" type="Microsoft.ServiceModel.Samples.UdpTransportElement, UdpTransport" />
  </bindingElementExtensions>
  <bindingExtensions>
    <add name="sampleProfileUdpBinding" type="Microsoft.ServiceModel.Samples.SampleProfileUdpBindingCollectionElement, UdpTransport" />
  </bindingExtensions>
</extensions>

This is a command line tool. You can see this blog post about how to setup command prompt with Vista so you can right click on any folder and drop in the command prompt window.

Usage:

ConfigurationCodeGenerator

/be:<BindingElementTypeName>]

/sb:<StandingBindingTypeName>]

/dll:<Dll>

Example:

ConfigurationCodeGenerator.exe /be:UdpTransportBindingElement /sb:SampleProfileUdpBinding /dll:..\..\..\..\Extensibility\Transport\Udp\CS\UdpTestService\bin\Debug\UdpTransport.dll

image

image

 

Custom Channels Tester

Location: \WCF_WF_CardSpace_Samples\WCF\Tools\CustomChannelsTester

What is it for: Creates a sample application using your custom binding and tests the client and server implementations.

image

 

Workflow Tools

External RuleSet Toolkit

Location: \WCF_WF_CardSpace_Samples\WCF\Extensibility\Rules\ExternalRuleSetToolkit

What is it for: Creating workflow rules outside Visual Studio.

Rules are stored in the database or they can be exported to .rule XML file. In the sample you will find the Setup.cmd and Setup.sql which creates the Rules database and RuleSet table in SQLEXPRESS instance by default.

You use these rules with the Policy activity in your workflow or you can load and execute rules with the System.Workflow.Activities.Rules.RuleEngine in your code.

image 

image

Exported .rule file.

image

Rules stored in the database.

image

Tracking Profile Designer

Location: \WCF_WF_CardSpace_Samples\WF\Applications\TrackingProfileDesigner

What is it for: Recoding Workflow, Activity or User level tracking points. Good for debugging. Also generates tracking profile XML.

You will need to install few scripts in the WF tracking database (just create empty database) C:\Windows\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\EN\


image

There are few good articles here and here about tracking.

image

Workflow Monitor

Location: \WCF_WF_CardSpace_Samples\WF\Applications\WorkflowMonitor

What is it for: Monitors current workflow instance.

Useful as a first aid kit for debugging your workflow.

image

 

What tools do you use and find useful in your every day WCF/WF adventures?

Petar

 
Posted by Petar Vucetin | 2 Comments | Trackback Url | Bookmark with:        
Tags: Work

Comments

Friday, 27 Jun 2008 05:37 by How many gems?
The title says 7, the intro says 5. ---- 5 in samples and 2 in SDK Petar

Thursday, 6 Nov 2008 02:02 by Visitor
thank you.

Name:
URL:
Email:
Comments:

CAPTCHA Image Validation