<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" media="screen" href="/App_Themes/default/rss.xslt"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:evnet="http://www.mscommunities.com/rssmodule/"><channel><title>Comment Feed for Service Enabling Workflows (jbienz on Channel 9)</title><atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/posts/jbienz/service-enabling-workflows/rss/default.aspx" /><image><url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url><title>Comment Feed for Service Enabling Workflows (jbienz on Channel 9)</title><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/</link></image><description>Service Enabling Workflows</description><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/</link><language>en-us</language><pubDate>Tue, 16 Sep 2008 03:30:03 GMT</pubDate><lastBuildDate>Tue, 16 Sep 2008 03:30:03 GMT</lastBuildDate><generator>EvNet (EvNet, Version=1.0.3608.3122, Culture=neutral, PublicKeyToken=null)</generator><item><title>Re: Service Enabling Workflows</title><description>Very sorry to everyone who was not able to get the sample files. I've upload them again and updated the link. Right now the file system still says 'Pending' but I hope that will be resolved tomorrow.</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=427750</link><pubDate>Tue, 16 Sep 2008 03:30:03 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=427750</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/427750/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Very sorry to everyone who was not able to get the sample files. I've upload them again and updated the link. Right now the file system still says 'Pending' but I hope that will be resolved tomorrow.</evnet:previewtext><dc:creator>Jared Bienz</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/427750/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>The link ist still broken but the example itself shouldn't be too complex.&lt;br&gt;The biggest problem is to route the the message from the Service Object to the UI Control. This has to be done by invoking a delegate on the form or the control itself, gently asking it do display someting for you. I usually do it with events exposed by the service class:&lt;br&gt;&lt;br&gt;// IMessageService.cs: &lt;br&gt;[ExternalDataExchange]&lt;br&gt;public interface IMessageService&lt;br&gt;{&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void SendMessage(string message);&lt;br&gt;}&lt;br&gt;&lt;br&gt;//MessageService.cs&lt;br&gt;public class MessageService : IMessageService&lt;br&gt;&amp;nbsp;{&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public event EventHandler&amp;lt;MessageReceivedEventArgs&amp;gt; MessageReceived;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void SendMessage(string message)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (MessageReceived != null)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageReceived(this, &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new MessageReceivedEventArgs(&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WorkflowEnvironment.WorkflowInstanceId, &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; message));&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;}&lt;br&gt;&lt;br&gt;The EventArgs object for this Event is a simple class derived from ExternalDataEventArgs, that contains a string property for the message. To identify the sender the ExternalDataEventArgs Ctor always requires a Guid.&lt;br&gt;&lt;br&gt;Now you can instantiate the service from the host application, then register to the MessageReceived Event. When received you can build a delegate that will be invoked on the form to change properties of the controls to display the message&lt;br&gt;&lt;br&gt;// in form load:&lt;br&gt;&lt;br&gt;ExternalDataExchangeService service = new ExternalDataExchangeService();&lt;br&gt;_runtime.AddService(service);&lt;br&gt;_messageService = new GuessingGameService();&lt;br&gt;service.AddService(_gameService);&lt;br&gt;_messageService.MessageReceived += new EventHandler&amp;lt;MessageReceivedEventArgs&amp;gt;(_messageService_MessageReceived);&lt;br&gt;&lt;br&gt;// the delegate&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private delegate void UpdateDelegate();&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void _messageService_MessageReceived(object sender, MessageReceivedEventArgs e)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UpdateDelegate theDelegate = delegate()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lblMessage.Text = e.Message;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _instanceId = e.InstanceId;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.Invoke(theDelegate); // invokes the delegate on the form updating the control.&lt;br&gt;}&lt;br&gt;&lt;br&gt;-----&lt;br&gt;&lt;br&gt;As there has no example been distributed so far - link still broken - i decided to do it on my own, and i hope this helps. if your want my sample code (very similar to this) just message me.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=425289</link><pubDate>Wed, 03 Sep 2008 11:29:59 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=425289</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/425289/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>The link ist still broken but the example itself shouldn't be too complex.The biggest problem is to route the the message from the Service Object to the UI Control. This has to be done by invoking a delegate on the form or the control itself, gently asking it do display someting for you. I usually&amp;#8230;</evnet:previewtext><dc:creator>Johannes Hofmeister</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/425289/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>&lt;P&gt;The link to the code for the Service Enabled Sample files does not work.&amp;nbsp; Are they posted?&lt;/P&gt;
&lt;P&gt;&lt;A href="http://channel9.msdn.commailto:ron.garlit@gmail.com&gt;ron.garlit@gmail.com&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=418771</link><pubDate>Thu, 31 Jul 2008 18:39:48 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=418771</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/418771/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>The link to the code for the Service Enabled Sample files does not work.&amp;nbsp; Are they posted?
ron.garlit@gmail.com
&amp;nbsp;</evnet:previewtext><dc:creator>Ronald Garlit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/418771/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>Hi Jared,&lt;BR&gt;&lt;BR&gt;The link to the code seems to be broken!&lt;BR&gt;&lt;BR&gt;Cheers,&lt;BR&gt;indyfromoz</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=417128</link><pubDate>Wed, 23 Jul 2008 06:43:23 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=417128</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/417128/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Hi Jared,The link to the code seems to be broken!Cheers,indyfromoz</evnet:previewtext><dc:creator>indyfromiz</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/417128/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>I&amp;nbsp; can't download the project files and I'd really like to check out the UI thread synchronization. Could you tell me how to get hold of the files? Thanks!&lt;BR&gt;&lt;BR&gt;Chris</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=415042</link><pubDate>Sun, 13 Jul 2008 06:50:23 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=415042</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/415042/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>I&amp;nbsp; can't download the project files and I'd really like to check out the UI thread synchronization. Could you tell me how to get hold of the files? Thanks!Chris</evnet:previewtext><dc:creator>Chris</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/415042/Trackback.aspx</trackback:ping></item><item><title>Re: Re: Service Enabling Workflows</title><description>Hey JSmith. Don't know what happened to the video but I just re-uploaded it. Sorry for the trouble.</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=413641</link><pubDate>Thu, 03 Jul 2008 20:10:20 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=413641</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/413641/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Hey JSmith. Don't know what happened to the video but I just re-uploaded it. Sorry for the trouble.</evnet:previewtext><dc:creator>Jared Bienz</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/413641/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>Where is the screencast?&lt;br&gt;</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=412149</link><pubDate>Thu, 26 Jun 2008 16:50:22 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=412149</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/412149/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Where is the screencast?</evnet:previewtext><dc:creator>JSmith</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/412149/Trackback.aspx</trackback:ping></item><item><title>Re: Service Enabling Workflows</title><description>I apologize in advance for the clipped audio.</description><comments></comments><link>http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=400102</link><pubDate>Mon, 28 Apr 2008 19:50:56 GMT</pubDate><guid isPermaLink="false">http://channel9.msdn.com/posts/jbienz/Service-Enabling-Workflows/?CommentID=400102</guid><evnet:views>0</evnet:views><evnet:viewtrackingurl>http://channel9.msdn.com/400102/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>I apologize in advance for the clipped audio.</evnet:previewtext><dc:creator>Jared Bienz</dc:creator><slash:comments>0</slash:comments><wfw:commentRss></wfw:commentRss><trackback:ping>http://channel9.msdn.com/400102/Trackback.aspx</trackback:ping></item></channel></rss>