<?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: Building Single Page Apps with HTML5, Knockout, jQuery, and Web API &#8211; Part 3 &#8211; Server Technologies</title>
	<atom:link href="http://www.johnpapa.net/spapost3/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.johnpapa.net/spapost3/</link>
	<description>Evangelist on the loose</description>
	<lastBuildDate>Wed, 22 May 2013 18:18:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
	<item>
		<title>By: John</title>
		<link>http://www.johnpapa.net/spapost3/#comment-59991</link>
		<dc:creator>John</dc:creator>
		<pubDate>Wed, 16 Jan 2013 13:05:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-59991</guid>
		<description><![CDATA[Mark - Certainly. You can create the back end as you wish as long as you expose it to a web service of some sort. Preferably one that reveals JSON over http, for ease of Ajax calls.]]></description>
		<content:encoded><![CDATA[<p>Mark &#8211; Certainly. You can create the back end as you wish as long as you expose it to a web service of some sort. Preferably one that reveals JSON over http, for ease of Ajax calls.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark</title>
		<link>http://www.johnpapa.net/spapost3/#comment-59721</link>
		<dc:creator>Mark</dc:creator>
		<pubDate>Tue, 15 Jan 2013 16:08:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-59721</guid>
		<description><![CDATA[We&#039;d like to leverage the Web API, but no need for EF as we already have business objects / domain objects (not to mention rich set of method arguments) developed that could just be called from the service methods.
Is this workable with the concept of context object?]]></description>
		<content:encoded><![CDATA[<p>We&#8217;d like to leverage the Web API, but no need for EF as we already have business objects / domain objects (not to mention rich set of method arguments) developed that could just be called from the service methods.<br />
Is this workable with the concept of context object?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.johnpapa.net/spapost3/#comment-58091</link>
		<dc:creator>David</dc:creator>
		<pubDate>Thu, 10 Jan 2013 04:14:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-58091</guid>
		<description><![CDATA[Correction:
return new EFRepository(DbContext);]]></description>
		<content:encoded><![CDATA[<p>Correction:<br />
return new EFRepository(DbContext);</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.johnpapa.net/spapost3/#comment-58081</link>
		<dc:creator>David</dc:creator>
		<pubDate>Thu, 10 Jan 2013 04:09:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-58081</guid>
		<description><![CDATA[Thanks for the bump James. I was starting to think it must have been a stupid question. I would be very interested to know the benefits of the current implementation over this simplification:
* Delete the RepositoryFactories class.
* Change IRepositoryProvider to this:
 DbContext DbContext { get; set; }
 IRepository Rooms();
 IRepository TimeSlots();
 IRepository Tracks();
 ISessionsRepository Sessions();
 IPersonsRepository Persons();
 IAttendanceRepository Attendance(); 

* Then implement each of these in RepositoryProvider; e.g.:
  public IRepository Rooms()
        {
            return new EFRepository(DbContext);
        }
* Then simply call these from the UOW, e.g.:
 public IRepository Rooms { get { return RepositoryProvider.Rooms(); } }

Cheers.]]></description>
		<content:encoded><![CDATA[<p>Thanks for the bump James. I was starting to think it must have been a stupid question. I would be very interested to know the benefits of the current implementation over this simplification:<br />
* Delete the RepositoryFactories class.<br />
* Change IRepositoryProvider to this:<br />
 DbContext DbContext { get; set; }<br />
 IRepository Rooms();<br />
 IRepository TimeSlots();<br />
 IRepository Tracks();<br />
 ISessionsRepository Sessions();<br />
 IPersonsRepository Persons();<br />
 IAttendanceRepository Attendance(); </p>
<p>* Then implement each of these in RepositoryProvider; e.g.:<br />
  public IRepository Rooms()<br />
        {<br />
            return new EFRepository(DbContext);<br />
        }<br />
* Then simply call these from the UOW, e.g.:<br />
 public IRepository Rooms { get { return RepositoryProvider.Rooms(); } }</p>
<p>Cheers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Barrow</title>
		<link>http://www.johnpapa.net/spapost3/#comment-57641</link>
		<dc:creator>James Barrow</dc:creator>
		<pubDate>Tue, 08 Jan 2013 23:55:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-57641</guid>
		<description><![CDATA[Hi John,

I&#039;m posting because I&#039;m also interested in the question David had regarding the Unit of Work pattern you use, and how to go about doing unit testing with this approach.

Also, typically I&#039;ve seen that there would be another service layer, between the web and data layers, with dependencies: web &gt; service &gt; data

That way, the web controller just calls a service, and in the service you actually use the unit of work that interacts with the database, so in my experience I&#039;ve seen that you typically wouldn&#039;t test the controller, but rather the service, and stub/mock out anything it&#039;s using. In this case, that would mean mocking out the unit of work.

So please if possible, can you get back to David&#039;s question, as I think it would be a common question :)

Cheers,

James]]></description>
		<content:encoded><![CDATA[<p>Hi John,</p>
<p>I&#8217;m posting because I&#8217;m also interested in the question David had regarding the Unit of Work pattern you use, and how to go about doing unit testing with this approach.</p>
<p>Also, typically I&#8217;ve seen that there would be another service layer, between the web and data layers, with dependencies: web &gt; service &gt; data</p>
<p>That way, the web controller just calls a service, and in the service you actually use the unit of work that interacts with the database, so in my experience I&#8217;ve seen that you typically wouldn&#8217;t test the controller, but rather the service, and stub/mock out anything it&#8217;s using. In this case, that would mean mocking out the unit of work.</p>
<p>So please if possible, can you get back to David&#8217;s question, as I think it would be a common question <img src='http://www.johnpapa.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Cheers,</p>
<p>James</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: LOB Gamification Service Admin Website: Data Services &#171; Dan&#039;s Green Shoes</title>
		<link>http://www.johnpapa.net/spapost3/#comment-48951</link>
		<dc:creator>LOB Gamification Service Admin Website: Data Services &#171; Dan&#039;s Green Shoes</dc:creator>
		<pubDate>Fri, 14 Dec 2012 18:32:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-48951</guid>
		<description><![CDATA[[...] John Papa’s course “Single Page Apps with HTML5, Web API, Knockout and jQuery”. From John’s blog, the SPA has lots of patterns “including the Repository Pattern (to expose the data in a [...]]]></description>
		<content:encoded><![CDATA[<p>[...] John Papa’s course “Single Page Apps with HTML5, Web API, Knockout and jQuery”. From John’s blog, the SPA has lots of patterns “including the Repository Pattern (to expose the data in a [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://www.johnpapa.net/spapost3/#comment-48911</link>
		<dc:creator>John</dc:creator>
		<pubDate>Fri, 14 Dec 2012 13:51:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-48911</guid>
		<description><![CDATA[ifrit - I&#039;ll be blogging about this in the next few days :)]]></description>
		<content:encoded><![CDATA[<p>ifrit &#8211; I&#8217;ll be blogging about this in the next few days <img src='http://www.johnpapa.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ifrit</title>
		<link>http://www.johnpapa.net/spapost3/#comment-48891</link>
		<dc:creator>ifrit</dc:creator>
		<pubDate>Fri, 14 Dec 2012 05:28:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-48891</guid>
		<description><![CDATA[Very nice post, thank you very much.
Just wondering how I&#039;de manage the LoginModel in such architecture]]></description>
		<content:encoded><![CDATA[<p>Very nice post, thank you very much.<br />
Just wondering how I&#8217;de manage the LoginModel in such architecture</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Abhi</title>
		<link>http://www.johnpapa.net/spapost3/#comment-48801</link>
		<dc:creator>Abhi</dc:creator>
		<pubDate>Fri, 07 Dec 2012 15:34:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-48801</guid>
		<description><![CDATA[Thanks John for the prompt response. That makes perfect sense.

I have started the Pluralsight course and am looking forward to do my first SPA app. :-)

Thanks, 
Abhi.]]></description>
		<content:encoded><![CDATA[<p>Thanks John for the prompt response. That makes perfect sense.</p>
<p>I have started the Pluralsight course and am looking forward to do my first SPA app. <img src='http://www.johnpapa.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Thanks,<br />
Abhi.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John</title>
		<link>http://www.johnpapa.net/spapost3/#comment-48791</link>
		<dc:creator>John</dc:creator>
		<pubDate>Fri, 07 Dec 2012 14:34:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.johnpapa.net/?p=161#comment-48791</guid>
		<description><![CDATA[Hi Abhi,

Sure. What you use on the back end is not important for a SPA. You can use DB2 and expose your data any way you like via a web service to the client. The &quot;SPA&quot; is all on the client.]]></description>
		<content:encoded><![CDATA[<p>Hi Abhi,</p>
<p>Sure. What you use on the back end is not important for a SPA. You can use DB2 and expose your data any way you like via a web service to the client. The &#8220;SPA&#8221; is all on the client.</p>
]]></content:encoded>
	</item>
</channel>
</rss>