<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Testing WCF Service Apps (Part 3 of 4)</title>
	<atom:link href="http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/feed/" rel="self" type="application/rss+xml" />
	<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/</link>
	<description>Func&#60;E&#62; Thoughts on Software</description>
	<lastBuildDate>Tue, 27 Dec 2011 21:30:52 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>By: Bill Campbell</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2260</link>
		<dc:creator>Bill Campbell</dc:creator>
		<pubDate>Sat, 27 Nov 2010 15:04:35 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2260</guid>
		<description>Hi Brian,
Would you by any chance have an example of using Rhinomocks for mocking out the Async calls? I&#039;ve been searching for some time and most of the examples that I find are using the old Rhino syntax and I can&#039;t figure out how to do this using the AAA syntax. This seems that it would be a very common pattern for Silverlight since everything is done async.
Thanks so much!
Bill44077</description>
		<content:encoded><![CDATA[<p>Hi Brian,<br />
Would you by any chance have an example of using Rhinomocks for mocking out the Async calls? I&#8217;ve been searching for some time and most of the examples that I find are using the old Rhino syntax and I can&#8217;t figure out how to do this using the AAA syntax. This seems that it would be a very common pattern for Silverlight since everything is done async.<br />
Thanks so much!<br />
Bill44077</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2137</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Fri, 19 Nov 2010 11:45:10 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2137</guid>
		<description>Bill,

Yes.  That is exactly correct.  I don&#039;t know of any way to do it automatically. It would be nice if the WCF client proxy generator had a way to do it... but it doesn&#039;t :(</description>
		<content:encoded><![CDATA[<p>Bill,</p>
<p>Yes.  That is exactly correct.  I don&#8217;t know of any way to do it automatically. It would be nice if the WCF client proxy generator had a way to do it&#8230; but it doesn&#8217;t :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Campbell</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2127</link>
		<dc:creator>Bill Campbell</dc:creator>
		<pubDate>Thu, 18 Nov 2010 19:56:43 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2127</guid>
		<description>Hi Brian,
Got it. I wasn&#039;t thinking that the ServiceClient is actually in the Reference.cs file in the Service References. I guess the implications of this is that any time you update your Service References you would need to change the ServiceClient to implement your derived interface since it would get re-generated. I don&#039;t think there is any way around that unless you know of some other trick. Does that sound right to you?
thanks much!
Bill44077</description>
		<content:encoded><![CDATA[<p>Hi Brian,<br />
Got it. I wasn&#8217;t thinking that the ServiceClient is actually in the Reference.cs file in the Service References. I guess the implications of this is that any time you update your Service References you would need to change the ServiceClient to implement your derived interface since it would get re-generated. I don&#8217;t think there is any way around that unless you know of some other trick. Does that sound right to you?<br />
thanks much!<br />
Bill44077</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Campbell</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2126</link>
		<dc:creator>Bill Campbell</dc:creator>
		<pubDate>Thu, 18 Nov 2010 12:27:07 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2126</guid>
		<description>Brian,
That&#039;s exactly what I thought you were saying but when I followed the same steps deriving my interface from the webservice interface and declaring the concrete classes as being partials I get build errors saying that my concretes don&#039;t implement the methods in the original webservice interface. So I have:

public interface IWebService // WebService generated Interface

then:
public interface IDataService : IWebService

then:
public partial RealDataService : IDataService
or:
public partial MockDataService : IDataService

It looks like what I am missing is that you say that the ServiceClient class is also &quot;generated&quot; where I am creating my own concretes. I can&#039;t seem to locate a ServiceClient class. Should this get generated when I update the ServiceRef? I&#039;m thinking it should be created in the client side code somewhere. This is probably what I am missing.
thanks!
Bill44077</description>
		<content:encoded><![CDATA[<p>Brian,<br />
That&#8217;s exactly what I thought you were saying but when I followed the same steps deriving my interface from the webservice interface and declaring the concrete classes as being partials I get build errors saying that my concretes don&#8217;t implement the methods in the original webservice interface. So I have:</p>
<p>public interface IWebService // WebService generated Interface</p>
<p>then:<br />
public interface IDataService : IWebService</p>
<p>then:<br />
public partial RealDataService : IDataService<br />
or:<br />
public partial MockDataService : IDataService</p>
<p>It looks like what I am missing is that you say that the ServiceClient class is also &#8220;generated&#8221; where I am creating my own concretes. I can&#8217;t seem to locate a ServiceClient class. Should this get generated when I update the ServiceRef? I&#8217;m thinking it should be created in the client side code somewhere. This is probably what I am missing.<br />
thanks!<br />
Bill44077</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2125</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Thu, 18 Nov 2010 11:01:35 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2125</guid>
		<description>Bill,

No.  That is not the case.  It is a bit difficult to follow, but notice two things: First, I created IRecipeBoxServiceAsync to extend the automatically generated IRecipeBoxService interface.  Then, I use the partial keyword to say that the concrete (also automatically generated) RecipeBoxServiceClient implements the Async interface.  That is all you have to do... because the RecipeBoxServiceClient already implements the methods/events... but for whatever reason, the WCF code generator didn&#039;t add them to the IRecipeBoxService... This is just a quick fix to add these async components to the interface so we can substitute it at test time.

Does that clarify?
Brian</description>
		<content:encoded><![CDATA[<p>Bill,</p>
<p>No.  That is not the case.  It is a bit difficult to follow, but notice two things: First, I created IRecipeBoxServiceAsync to extend the automatically generated IRecipeBoxService interface.  Then, I use the partial keyword to say that the concrete (also automatically generated) RecipeBoxServiceClient implements the Async interface.  That is all you have to do&#8230; because the RecipeBoxServiceClient already implements the methods/events&#8230; but for whatever reason, the WCF code generator didn&#8217;t add them to the IRecipeBoxService&#8230; This is just a quick fix to add these async components to the interface so we can substitute it at test time.</p>
<p>Does that clarify?<br />
Brian</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Campbell</title>
		<link>http://houseofbilz.com/archives/2008/12/19/testing-wcf-service-apps-part-3-of-4/comment-page-1/#comment-2117</link>
		<dc:creator>Bill Campbell</dc:creator>
		<pubDate>Wed, 17 Nov 2010 18:37:56 +0000</pubDate>
		<guid isPermaLink="false">http://houseofbilz.net/archive/2008/12/19/testing-wcf-service-apps-part-3-of-4/#comment-2117</guid>
		<description>Hi,
Sorry that I&#039;m so late on commenting here but I just came across your posts. Thanks much - this is great!
I was wondering - when you have your concrete class RecipeBoxServiceClient : IRecipeBoxServiceAsync that will have all the original Begin/End functions that came from the original interface (IRecipeBoxService) and so we will need to implement all of those original interface methods with not implemented or something, right?
thanks,
Bill44077</description>
		<content:encoded><![CDATA[<p>Hi,<br />
Sorry that I&#8217;m so late on commenting here but I just came across your posts. Thanks much &#8211; this is great!<br />
I was wondering &#8211; when you have your concrete class RecipeBoxServiceClient : IRecipeBoxServiceAsync that will have all the original Begin/End functions that came from the original interface (IRecipeBoxService) and so we will need to implement all of those original interface methods with not implemented or something, right?<br />
thanks,<br />
Bill44077</p>
]]></content:encoded>
	</item>
</channel>
</rss>

