<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Service Factory Modelling Edition &#8211; part 2</title>
	<atom:link href="http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/</link>
	<description>Random thoughts from a kiwi .net developer</description>
	<lastBuildDate>Mon, 20 Jul 2009 20:33:41 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Ratnakar Garikipati</title>
		<link>http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/#comment-596</link>
		<dc:creator>Ratnakar Garikipati</dc:creator>
		<pubDate>Sat, 26 Jul 2008 23:49:14 +0000</pubDate>
		<guid isPermaLink="false">http://nzdotnetdude.wordpress.com/?p=26#comment-596</guid>
		<description>Cool. I was just raising this with you just in case you weren&#039;t aware.

I have done something similar with the handling of list translations. I appreciate that you&#039;ve got a blog covering this as you probably would know there&#039;s not enough help available out there.

Cheers!
Ratnakar</description>
		<content:encoded><![CDATA[<p>Cool. I was just raising this with you just in case you weren&#8217;t aware.</p>
<p>I have done something similar with the handling of list translations. I appreciate that you&#8217;ve got a blog covering this as you probably would know there&#8217;s not enough help available out there.</p>
<p>Cheers!<br />
Ratnakar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark</title>
		<link>http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/#comment-594</link>
		<dc:creator>Mark</dc:creator>
		<pubDate>Thu, 17 Jul 2008 22:00:33 +0000</pubDate>
		<guid isPermaLink="false">http://nzdotnetdude.wordpress.com/?p=26#comment-594</guid>
		<description>Hi Ratnakar, 

Thanks for your comments...good to hear that you&#039;ve got the respository factory working in VS2008 - I assumed that MS would do so themselves eventually, but for this particular project I wasn&#039;t too worried, since we&#039;d started with VS 2005 in any case. 

So, that is the answer for your question too really - I used the Repository Factory for the data access stuff. 

And yes, I was aware of the limitations/liabilities of using the translators - but they are so simple that it&#039;s pretty easy to work around them in any case. For example, where I had a more entity, with a &quot;parent child&quot; type of relation in there, say a Customer with a collection of Orders as one of its properties, I modified the translator for the Customer so that to translate the Orders property it calls the Orders translators &quot;collection translator&quot; as described in the post above. 

I also had to take into account the fact that where we have data contract types that only have a subset of the fields that the underlying entity have, I compensate for that in the business logic. I&#039;m going to post on that at some point too, but basically for any data that can&#039;t have changed, I make sure the data is left as is in the database.

My solution here was not ideal, since it results in an additional query on the database, but hey, there are compromises in everything you do, and we decided it was better to do a quick hop to the db again from the services (since the db is &quot;next to&quot; the app server) rather than pass the full state around where its not needed, wasting bandwidth.

Cheers
Mark</description>
		<content:encoded><![CDATA[<p>Hi Ratnakar, </p>
<p>Thanks for your comments&#8230;good to hear that you&#8217;ve got the respository factory working in VS2008 &#8211; I assumed that MS would do so themselves eventually, but for this particular project I wasn&#8217;t too worried, since we&#8217;d started with VS 2005 in any case. </p>
<p>So, that is the answer for your question too really &#8211; I used the Repository Factory for the data access stuff. </p>
<p>And yes, I was aware of the limitations/liabilities of using the translators &#8211; but they are so simple that it&#8217;s pretty easy to work around them in any case. For example, where I had a more entity, with a &#8220;parent child&#8221; type of relation in there, say a Customer with a collection of Orders as one of its properties, I modified the translator for the Customer so that to translate the Orders property it calls the Orders translators &#8220;collection translator&#8221; as described in the post above. </p>
<p>I also had to take into account the fact that where we have data contract types that only have a subset of the fields that the underlying entity have, I compensate for that in the business logic. I&#8217;m going to post on that at some point too, but basically for any data that can&#8217;t have changed, I make sure the data is left as is in the database.</p>
<p>My solution here was not ideal, since it results in an additional query on the database, but hey, there are compromises in everything you do, and we decided it was better to do a quick hop to the db again from the services (since the db is &#8220;next to&#8221; the app server) rather than pass the full state around where its not needed, wasting bandwidth.</p>
<p>Cheers<br />
Mark</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ratnakarg</title>
		<link>http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/#comment-593</link>
		<dc:creator>ratnakarg</dc:creator>
		<pubDate>Thu, 17 Jul 2008 08:28:12 +0000</pubDate>
		<guid isPermaLink="false">http://nzdotnetdude.wordpress.com/?p=26#comment-593</guid>
		<description>I have hacked the repository factory to work in VS2008 btw.</description>
		<content:encoded><![CDATA[<p>I have hacked the repository factory to work in VS2008 btw.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ratnakarg</title>
		<link>http://nzdotnetdude.wordpress.com/2008/07/14/service-factory-modelling-edition-part-2/#comment-592</link>
		<dc:creator>ratnakarg</dc:creator>
		<pubDate>Thu, 17 Jul 2008 08:27:10 +0000</pubDate>
		<guid isPermaLink="false">http://nzdotnetdude.wordpress.com/?p=26#comment-592</guid>
		<description>Hey...it&#039;s good to know that I could at last find someone who&#039;s into WSSF in NZ. Am wondering if you have taken into account the liabilities as outlined by M/S with using the translators (particularly the third one) - see below:

Data can be lost between translations when translated data types do not support all of the fields found in the original data types. 

It may be necessary to call multiple translators during a single action, which can increase complexity by requiring process dependencies on consumers of the translator. This can be mitigated by using a process manager pattern. 

Implementation of an object-based solution requires the creation of custom objects that have to be maintained. As the number of data types increase, the maintenance requirements of entity translators will also increase. 

It&#039;s a bit too late in the day for me to think but given that the repository factory (rightly) is pulled out of th WSSF, wondering what tool you are using to codegen the data access side of things. 

Ratnakar</description>
		<content:encoded><![CDATA[<p>Hey&#8230;it&#8217;s good to know that I could at last find someone who&#8217;s into WSSF in NZ. Am wondering if you have taken into account the liabilities as outlined by M/S with using the translators (particularly the third one) &#8211; see below:</p>
<p>Data can be lost between translations when translated data types do not support all of the fields found in the original data types. </p>
<p>It may be necessary to call multiple translators during a single action, which can increase complexity by requiring process dependencies on consumers of the translator. This can be mitigated by using a process manager pattern. </p>
<p>Implementation of an object-based solution requires the creation of custom objects that have to be maintained. As the number of data types increase, the maintenance requirements of entity translators will also increase. </p>
<p>It&#8217;s a bit too late in the day for me to think but given that the repository factory (rightly) is pulled out of th WSSF, wondering what tool you are using to codegen the data access side of things. </p>
<p>Ratnakar</p>
]]></content:encoded>
	</item>
</channel>
</rss>
