<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Affinno's Weblog</title>
	<atom:link href="http://affinno.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://affinno.wordpress.com</link>
	<description>Blog over software development in het algemeen en Microsoft technologie in het bijzonder.</description>
	<lastBuildDate>Mon, 28 Sep 2009 11:38:19 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>nl</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='affinno.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/5d16412ddeb58468829bf93ababd0c6d?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Affinno's Weblog</title>
		<link>http://affinno.wordpress.com</link>
	</image>
			<item>
		<title>Snelle SVN installatie met VisualSVN</title>
		<link>http://affinno.wordpress.com/2009/09/28/snelle-svn-installatie-met-visualsvn/</link>
		<comments>http://affinno.wordpress.com/2009/09/28/snelle-svn-installatie-met-visualsvn/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 11:31:22 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Componenten]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Tortoise]]></category>
		<category><![CDATA[VisualSVN]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=231</guid>
		<description><![CDATA[Een tijdje geleden heb ik op een project gewerkt met SVN voor source control.
Meestal werk je als Microsoft developer met VSS (Visual Source Safe) of TFS (Team Foundation Server) maar voor een klein project was ik best gecharmeerd geraakt van SVN tezamen met Tortoise  als client tool.

Vooral het principe dat er geen bestanden read-only worden [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=231&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Een tijdje geleden heb ik op een project gewerkt met SVN voor source control.<br />
Meestal werk je als Microsoft developer met VSS (Visual Source Safe) of TFS (Team Foundation Server) maar voor een klein project was ik best gecharmeerd geraakt van SVN tezamen met <a title="tortoise svn tigris" href="http://tortoisesvn.tigris.org/" target="_blank">Tortoise </a> als client tool.<br />
<img title="tortoisesvn_logo_hor468x64" src="http://affinno.files.wordpress.com/2009/09/tortoisesvn_logo_hor468x64.png?w=300&#038;h=41" alt="tortoisesvn_logo_hor468x64" width="300" height="41" /><br />
Vooral het principe dat er geen bestanden read-only worden gemarkeerd en je lekker kunt editen, ook off-line, vond ik erg ok.<br />
Waar ik echter tegenop zag was het installeren van een SVN server; de how-to pagina&#8217;s waren niet altijd even consistent en helder.<br />
Maar wat is er nu (of misschien al langer, maar voor mij is het er <em>nu</em>): Visual SVN.<br />
<img title="logo_visual_svn_server" src="http://affinno.files.wordpress.com/2009/09/logo_visual_svn_server.jpg?w=150&#038;h=58" alt="logo_visual_svn_server" width="150" height="58" /></p>
<p>Een Next, Next, Finish installatie van SVN.<br />
Geprobeerd, en het werkt. Dus ook voor kleinere projecten of 1-mans projecten waar je source control wilt gebruiken (al is het alleen maar om een dolgedraaide designer te kunnen rollbacken) een mooie oplossing.</p>
Posted in Componenten, General Tagged: Tortoise, VisualSVN <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/231/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=231&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/09/28/snelle-svn-installatie-met-visualsvn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/09/tortoisesvn_logo_hor468x64.png?w=300" medium="image">
			<media:title type="html">tortoisesvn_logo_hor468x64</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/09/logo_visual_svn_server.jpg?w=150" medium="image">
			<media:title type="html">logo_visual_svn_server</media:title>
		</media:content>
	</item>
		<item>
		<title>The Scott</title>
		<link>http://affinno.wordpress.com/2009/09/26/the-scott/</link>
		<comments>http://affinno.wordpress.com/2009/09/26/the-scott/#comments</comments>
		<pubDate>Sat, 26 Sep 2009 20:55:17 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Asp.Net MVC]]></category>
		<category><![CDATA[Biek]]></category>
		<category><![CDATA[Scott Guthrie]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=226</guid>
		<description><![CDATA[Hij was er, wel een van de meest bekende mensen en sprekers van- en over .Net: Scott Guthrie.
Verantwoordelijk voor een groot deel van .Net, webforms en het verhaal gaat dat hij de grote lijnen van ASP.Net MVC in een vliegtuig in elkaar heeft getimmerd.
Hij was in Engeland en Nederland, en de vrienden van DotNed hebben [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=226&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><strong>Hij</strong> was er, wel een van de meest bekende mensen en sprekers van- en over .Net:<strong> Scott Guthrie</strong>.<br />
Verantwoordelijk voor een groot deel van .Net, webforms en het verhaal gaat dat hij de grote lijnen van ASP.Net MVC in een vliegtuig in elkaar heeft getimmerd.<br />
Hij was in Engeland en Nederland, en de vrienden van <a href="http://www.dotned.nl" target="_blank">DotNed </a>hebben het voor mekaar gekregen om hem als spreker te boeken. Afas was zo vriendelijk de sessie te hosten, en het was in 1 woord <strong>geweldig</strong>.<br />
Wat een ervaring, wat een enthousiasme, wat een drive, wat eigenlijk niet?<br />
Daar staat dus een van de grote mensen van Microsoft voor 250 man in Nederland te vertellen over ASP.Net MVC en over Visual Studio 2010. En dan niet een standaard sales praatje of een schrale demo, maar twee keer 2 1/2 uur praten. En hoe! vol enthousiasme en plezier vertelt hij de dingen alsof hij ze pas net heeft ontdekt.<br />
Een genot om deze man mee te maken, veel wijzer geworden en een leuke avond gehad.</p>
<p><img class="aligncenter size-medium wp-image-227" title="IMAG0230" src="http://affinno.files.wordpress.com/2009/09/imag0230.jpg?w=300&#038;h=225" alt="IMAG0230" width="300" height="225" /></p>
Posted in Asp.Net MVC, Biek Tagged: Scott Guthrie <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/226/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/226/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/226/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/226/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/226/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=226&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/09/26/the-scott/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/09/imag0230.jpg?w=300" medium="image">
			<media:title type="html">IMAG0230</media:title>
		</media:content>
	</item>
		<item>
		<title>Ervaringen met het ASP.NET MVC framework</title>
		<link>http://affinno.wordpress.com/2009/09/03/ervaringen-met-het-asp-net-mvc-framework/</link>
		<comments>http://affinno.wordpress.com/2009/09/03/ervaringen-met-het-asp-net-mvc-framework/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 07:00:42 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Asp.Net MVC]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/2009/09/03/ervaringen-met-het-asp-net-mvc-framework/</guid>
		<description><![CDATA[Deel 2 over de ervaringen met het ASP.NET MVC framework

Testbaarheid
Veel genoemd als voordeel en dat is zeker terecht: de testbaarheid.
Omdat de (business logica) rol van de view heel klein is ligt alle logica bij de controller of anders gezegd: als je de controller van de juiste data voorziet en de juiste actie aanroept, dan zal [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=223&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Deel 2 over de ervaringen met het ASP.NET MVC framework</p>
<p><strong><a href="http://affinno.files.wordpress.com/2009/09/aspnetmvcpreview.jpg"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" title="aspnetmvcpreview" src="http://affinno.files.wordpress.com/2009/09/aspnetmvcpreview_thumb.jpg?w=244&#038;h=73" border="0" alt="aspnetmvcpreview" width="244" height="73" /></a></strong></p>
<p><strong>Testbaarheid</strong><br />
Veel genoemd als voordeel en dat is zeker terecht: de testbaarheid.<br />
Omdat de (business logica) rol van de view heel klein is ligt alle logica bij de controller of anders gezegd: als je de controller van de juiste data voorziet en de juiste actie aanroept, dan zal deze de juiste data teruggeven en ook de juiste view aanroepen. Dat is natuurlijk mooi te testen: wat een pagina uit je site doet, namelijk het posten van data (via FormPost of Get) naar een actie van een controller, kun je vanuit je testproject ook. Je hebt dus geen last van allerlei verborgen acties die nog in je view worden uitgevoerd. Een <em>plus voor testen</em>. </p>
<p><strong>Viewstate</strong><br />
Geen viewstate. Omdat we geen server controls hebben die allerlei state met zich mee dragen hebben we ook geen viewstate. Uitzetten kan in een gewone ASP.NET applicatie natuurlijk ook, maar de wat intelligentere server controls zoals de GridView vinden dat geen goed idee: het event model houdt er dan ook mee op. En geen view state geeft toch al gauw een fikse page size verbetering. <em>Een plus voor filesize</em>.</p>
<p><strong>Bewuster van htmlcode</strong><br />
Een indirect voordeel van het werken met het ASP.NET MVC framework is dat je je veel bewuster bent van de html die je site oplevert. Van een GridView weet eigenlijk niemand wat voor html deze oplevert, en in het geval van een server control is dat ook eigenlijk niet belangrijk. Maar als je je wel van de html bewust wilt zijn, bijvoorbeeld omdat search engine optimalisatie belangrijk is, dan is dat met het MVC framework sneller het geval.</p>
<p><strong>Microsoft&#8217;s versie 1</strong>.<br />
Het verhaal gaat dat een versie 1 product van Microsoft eigenlijk niet productierijp is. In dit geval is dat in ieder geval niet zo. We hebben vanaf dag één productie kunnen draaien.</p>
<p><strong>Overzicht aspx</strong><br />
Bij een gewone ASP.NET site staat veel code in de code behind file. Ook wordt daar veel opmaak werk gedaan, controls aangemaakt etc.<br />
Met het ASP.NET MVC framework doe je dat allemaal in de view (de aspx / ascx files). Dat geeft soms wel een wat onoverzichtelijke pagina: het wordt al snel een mengelmoes van html tags en for-each loops die door de data heenlopen die de controller aan de view heeft gegeven. <em>Een min voor overzichtelijkheid van de view</em>.</p>
<p><strong>Leercurve</strong><br />
<a href="http://affinno.files.wordpress.com/2009/09/41vsfolzq9l.jpg"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;margin:5px 0 15px 20px;" title="41vsFoLZq9L" src="http://affinno.files.wordpress.com/2009/09/41vsfolzq9l_thumb.jpg?w=121&#038;h=151" border="0" alt="41vsFoLZq9L" width="121" height="151" align="right" /></a>Een nadeel om er mee aan de slag te gaan is zoals altijd de leercurve. Deze is bij dit framework best aanwezig, want het is niet iets dat je half kunt implementeren en het is ook niet iets dat er even naast hangt: het vervangt een redelijk deel van de ASP.NET kennis die je hebt; o.a. die van de vele server controls die ASP.NET rijk is. Zelf heb ik het boek van o.a. ScottGu gelezen (Professional ASP.NET MVC 1.0) en daarmee heb je de basis in ieder geval snel onder de knie. <em>Een min als je morgen direct moet beginnen.  </em></p>
<p><strong>Geen server controls</strong><br />
In het begin vraag je je af: waar begin ik aan. Al dat extra werk dat een server control je uit handen neemt. Maar aan de andere kant: het is ook wel vaak gedoe met die controls. Een GridView lijkt heel handig, helemaal als je de voorbeelden ziet met inline editen van data. Maar als je zelf aan de gang gaat, zonder de gesleepte SqlDataSource maar gebruik makend van je DAL, dan moet je vaak toch wel flink wat tweaken. En code als de ItemDataBound, de FindControl, de (Cells[0].Controls[0] as TextBox).Text etc. zijn ook niet altijd even handig. Conclusie: het viel eigenlijk best mee om zonder deze controls aan de gang te gaan. Een GridView is met een foreach loop ook zo opgebouwd, en als je de flow van je site in je hoofd hebt zijn de edit, delete en insert buttons ook zo gemaakt.</p>
<p><strong>Geen abstractie</strong><br />
Het ASP.NET framework biedt een heleboel abstractie aan. De acties binnen een website zijn eigenlijk heel simpel: je doet vanuit de client een GET of een POST, en op de server kijk je welke data er mee is gekomen (via de Form data of de querystring) en afhankelijk van de pagina die wordt geladen en de data die je hebt meegekregen voer je je actie uit en bouw je een nieuwe pagina op.<br />
De hele abstractielaag die ASP.Net daar op heeft gebouwd zoals de Postback, de button_click events als ware het een Windows applicatie, de events die op server controls afgaan: als je de overstap maakte van een windows applicatie leek het zo heel logisch, maar soms maakt de abstractie het moeilijker dan het origineel was. Van een simpele Post wordt een form_load gemaakt met een IsPostback property, een Button_click, een aantal events op een GridView, een findcontrol op de pagina, een OnChange event van een textbox, een databind() van een Repeater en wat al niet meer. Jarenlang een gegeven, maar nu met de ervaring van het MVC framework valt het wel op dat het niet alleen maar simpeler is, zo&#8217;n abstractielaag. <em>Een plus voor de overzichtelijkheid van het ASP.NET MVC framework. </em></p>
<p><strong>Conclusie</strong><br />
Conclusie is dat ik het ASP.NET MVC framework een dikke pluim geef en het volgende keer zeker weer zou inzetten bij een dergelijk project.</p>
Posted in Asp.Net MVC Tagged: Asp.Net MVC <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/223/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=223&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/09/03/ervaringen-met-het-asp-net-mvc-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/09/aspnetmvcpreview_thumb.jpg" medium="image">
			<media:title type="html">aspnetmvcpreview</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/09/41vsfolzq9l_thumb.jpg" medium="image">
			<media:title type="html">41vsFoLZq9L</media:title>
		</media:content>
	</item>
		<item>
		<title>Aan de slag met ASP.NET MVC</title>
		<link>http://affinno.wordpress.com/2009/08/17/aan-de-slag-met-asp-net-mvc/</link>
		<comments>http://affinno.wordpress.com/2009/08/17/aan-de-slag-met-asp-net-mvc/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 19:26:50 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Asp.Net MVC]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/2009/08/17/aan-de-slag-met-asp-net-mvc/</guid>
		<description><![CDATA[&#8216;k heb net een groot project afgerond dat is gebouwd met het ASP.NET MVC framework.
Het betrof hier de herbouw van www.beurs.nl, een site waar performance een must is, SEO ook, en runtime errors en work-arounds zijn niet welkom. Oftewel: een mooie testcase voor dit nieuwe framework.
In deze post als eerste: wat is het ASP.NET MVC [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=216&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>&#8216;k heb net een groot project afgerond dat is gebouwd met het <strong>ASP.NET MVC framework</strong>.<br />
Het betrof hier de herbouw van www.beurs.nl, een site waar performance een must is, SEO ook, en runtime errors en work-arounds zijn niet welkom. Oftewel: een mooie testcase voor dit nieuwe framework.</p>
<p>In deze post als eerste: <strong>wat is het</strong> ASP.NET MVC framework (vanaf hier genoemd: MVC)?<br />
MVC is een pattern dat al lang bestaat en de opbouw van je applicatie opdeelt in de componenten Model, View en Controller. Hierbij komt een aanvraag of request van in dit geval een webpagina binnen bij de controller. Meestal komt er ook nog data mee in de aanvraag: bij een Get request zit dit in de querystring (www.beurs.nl/zoek/term=AEX) en bij een Post request zit het in een aparte collectie met data en bevat het de inhoud van de velden van je Form.</p>
<p>Het verschil met de gewone aspx pagina is dat nu niet een<strong> Page object</strong> wordt opgestart (met normaal het eerste contact in de form load, die kijkt of het een postback is etc etc) maar een Class die afgeleid is van een <strong>MVC Control</strong>ler object.<br />
Dit is direct het eerste verschil: je komt nu binnen in een apart object (de <strong>controller</strong>), terwijl je anders in een code behind van een grafisch element, een form, binnenkomt.<br />
Deze controller (de C uit het MVC) heeft meerdere <strong>Actions</strong> in zich, die je implementeert als methode in het Controller object. Deze Actions kunnen bijvoorbeeld zijn: SaveNews, PostComment, CreateRssFeed, EditNews etc. De koppeling tussen url&#8217;s en de controller/action combinatie doe je in de Global.asax, daar zet je in dat &#8216;/nieuws/binnenland/AEX stijgt&#8217; naar de controller &#8216;News&#8217; moet, en naar de Action (methode) &#8216;news&#8217; en dat deze een parameter van het type string heeft waar dan de tekst &#8216;AEX stijgt&#8217; in wordt geplaatst.</p>
<p>Je voelt nu al dat dit wel gemakkelijk testbaar is, want een methode aanroepen met een parameter is iets dat je nu ook al doet in test projecten.<br />
De Action heeft dan de kennis in zich wat hij moet doen. In dit geval moet hij de cache controleren, eventueel het nieuws uit de database halen en het toevoegen aan de cache. Deze laatste acties, het al dan niet gecached ophalen van de data, zit in je service- en datalaag. Deze twee lagen samen vormen je Model (de M uit het MVC). Je kunt het <strong>Model</strong> dus ook wel zien als je business layer gecombineerd met je data layer.</p>
<p>Als de controller deze data heeft opgehaald dan bepaalt hij welke <strong>view</strong> (de V uit het MVC) deze data moet gaan tonen: is de data bestemd voor een nieuwsfeed of voor een usercontrol of voor een HTML pagina of iets anders. Meestal zal het laatste het geval zijn en geeft de controller de opgehaalde data aan de View. De view ten slotte heeft de kennis in zich hoe een en ander op het scherm getoond gaat worden; welke data in welke DIV geplaatst wordt, en afhankelijk van de data welke css style erop van toepassing is. Standaard is de view een ASPX pagina die niet afleidt van het Page object maar van de <strong>Mvc.ViewPage</strong>.</p>
<p><a href="http://affinno.files.wordpress.com/2009/08/cc337884_fig01.gif"><img style="border-right:0;border-top:0;display:inline;margin-left:0;border-left:0;margin-right:0;border-bottom:0;" title="cc337884_fig01" src="http://affinno.files.wordpress.com/2009/08/cc337884_fig01_thumb.gif?w=195&#038;h=244" border="0" alt="cc337884_fig01" width="195" height="244" align="right" /></a></p>
<p>De verschillen tussen een gewoon webproject en een MVC project die het meeste in het oog springen:</p>
<ul>
<li>Geen Viewstate</li>
<li>weinig tot geen SessionState</li>
<li>Eenvoudig SEO-friendly url&#8217;s</li>
<li>Geen servercontrols (DataGrid, ObjectDataSource)</li>
<li>Wel volledige controle over de gegenereerde HTML</li>
<li>Goede testbaarheid</li>
<li>Geen code behind</li>
<li>Duidelijke separation of concerns</li>
</ul>
<p>In de volgende post: de ervaringen met het ASP.NET MVC framework.</p>
Posted in Asp.Net MVC  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/216/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=216&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/08/17/aan-de-slag-met-asp-net-mvc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/08/cc337884_fig01_thumb.gif" medium="image">
			<media:title type="html">cc337884_fig01</media:title>
		</media:content>
	</item>
		<item>
		<title>CSS sprites</title>
		<link>http://affinno.wordpress.com/2009/08/14/css-sprites/</link>
		<comments>http://affinno.wordpress.com/2009/08/14/css-sprites/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 07:57:57 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/2009/08/14/css-sprites/</guid>
		<description><![CDATA[Er is een onderzoek geweest dat sites met veel afbeeldingen (en daarbij tellen zeker ook achtergronden van buttons en hun mouseovers) een groot deel van de laadtijd besteden aan het 1 voor 1 laden van die afbeeldingen.
De browser haalt namelijk de html op, en komt er dan in de CSS (background: url(&#8216;mouse.gif&#8217;) no-repeat;) of de [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=210&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Er is een onderzoek geweest dat sites met veel afbeeldingen (en daarbij tellen zeker ook achtergronden van buttons en hun mouseovers) een groot deel van de laadtijd besteden aan het 1 voor 1 laden van die afbeeldingen.<br />
De browser haalt namelijk de html op, en komt er dan in de CSS (background: url(&#8216;mouse.gif&#8217;) no-repeat;) of de HTML zoals de image source (&lt;img src=&#8221;mouse.gif&#8221;) achter dat er nog een plaatje van de server afgehaald moet worden.<br />
Bij veel afbeeldingen loopt dat aantal requests snel op, en dat geeft wel een ervaring aan de gebruiker dat er iets aan het gebeuren is, maar kan al met al wel tot 50% van de laadtijd extra kosten.<br />
<a href="http://affinno.files.wordpress.com/2009/08/csssprite.png"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;margin:10px 0 0 15px;" title="csssprite" src="http://affinno.files.wordpress.com/2009/08/csssprite_thumb.png?w=244&#038;h=184" border="0" alt="csssprite" width="244" height="184" align="right" /></a>Vroeger (in internet termen dan) was het wel een must om de gebruiker te laten zien dat de pagina iets aan het doen is, maar aangezien de meeste 28K8 modems er wel zo&#8217;n beetje uit zijn, kun je ook het volgende doen:<br />
Je neemt in plaats van allemaal kleine afbeeldingen 1 grote afbeelding, en je laat alleen dat stukje van de afbeelding zien wat je op dat moment nodig hebt.<br />
Als je de eerste aanroep van de afbeelding bovenin je html zet, dan zijn in de rest van de pagina alle afbeeldingen al direct, zonder nieuw request, beschikbaar.</p>
Posted in CSS Tagged: CSS <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/210/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/210/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/210/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/210/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/210/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/210/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/210/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/210/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/210/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/210/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=210&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/08/14/css-sprites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/08/csssprite_thumb.png" medium="image">
			<media:title type="html">csssprite</media:title>
		</media:content>
	</item>
		<item>
		<title>Microsoft DevDays 2009</title>
		<link>http://affinno.wordpress.com/2009/05/28/microsoft-devdays-2009/</link>
		<comments>http://affinno.wordpress.com/2009/05/28/microsoft-devdays-2009/#comments</comments>
		<pubDate>Thu, 28 May 2009 19:10:01 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=200</guid>
		<description><![CDATA[Vandaag was het weer zover, de Microsoft DevDays 2009.

Een bijna vertrouwd gezicht om Arie Leeuwesteijn de opening te zien verzorgen.
Dit jaar een best interessante keynote; niet alleen amusant maar ook informatief over The Azure Services Platform.
Daarna een hele goede presentatie van Ingo Rammer over Dynamic Data. Dynamic data is een te customizen &#8216;applicatie&#8217; die voor [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=200&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Vandaag was het weer zover, de Microsoft DevDays 2009.<br />
<img class="aligncenter size-full wp-image-201" title="devdays" src="http://affinno.files.wordpress.com/2009/05/devdays.jpg?w=510&#038;h=382" alt="devdays" width="510" height="382" /></p>
<p>Een bijna vertrouwd gezicht om Arie Leeuwesteijn de opening te zien verzorgen.</p>
<p>Dit jaar een best interessante keynote; niet alleen amusant maar ook informatief over <strong>The Azure Services Platform</strong>.</p>
<p>Daarna een hele goede presentatie van Ingo Rammer over <strong>Dynamic Data</strong>. Dynamic data is een te customizen &#8216;applicatie&#8217; die voor een of meerdere tabellen in je Entity Framework een <strong>CRUD site</strong> genereert. Het genereren gebeurt runtime aan de hand van templates en je Model, dat grotendeels uit het EF komt maar waar je zelf ook aanpassingen aan kan doen. Je kunt bv van een attribuut aangeven dat het een waarde mag hebben tussen 0 en 100 en er wordt dan bij een refresh van je pagina direct een validator gegenereerd.<br />
<strong>Mooi spul</strong>, zeker voor een admin tool of een klant die de afweging maakt van een minder tailor made applicatie tegen een lagere kostprijs. Na MS-Access is er eindelijk weer een eenvoudige datadriven oplossing van Microsoft.</p>
<p>Daarna een vrij technische verhandeling over production debugging. Leuk om te zien wat er allemaal mogelijk is aan monitoring, memory dumps, managed- en unmanaged memory e.d. Een leuk stukje: midden in het verhaal was er ineens een heap dump te zien met daarin o.a. een OutOfMemoryException. Het bleek dat je die niet serieus moest nemen in je diagnose omdat die er altijd in zit: als de CLR start dan wordt deze al op de heap geplaatst omdat als de CLR echt een out of memory tegenkomt, hij geen geheugen meer vrij heeft om een OutOfMemoryException op de heap te plaatsen.</p>
<p>Vervolgens een presentatie over <strong>ASP.Net Ajax 4.0</strong> die nu in Beta was (of in CTP, &#8216;k weet niet zeker). Het kwam er eigenlijk in het kort op neer dat ze een hele grote Ajax library aan het bouwen zijn waarmee je in de client op dezelfde manier, dus niet met C# zoals in Silverlight, maar op een gelijke wijze dingen moet kunnen doen als op de server.</p>
<p>Het slot was van <strong>Sander Hoogendoorn met een mooie presentatie* over frameworks</strong> die niet alleen aan het einde wel trek had in een biertje (wat er overigens niet was zover ik kon zien) maar ook twee mooie uitspraken had:<br />
Over een passend formaat framework: &#8220;<em>Frameworks zijn er, net als pizza&#8217;s, in 2 formaten: te groot en te klein.</em>&#8220;<br />
en over de lock-in die een framework vaak met zich mee brengt: &#8220;<em>Frameworks zijn net als vrouwen, je kunt er niet mee leven en je kunt ze niet killen</em>&#8220;.</p>
<p>Al met al een amusante dag: veel gezien en gehoord, nog wat leuke boeken gescoord en oud(e) collega&#8217;s ontmoet.</p>
<p>* Bij Sander spreek je eigenlijk niet echt over een presentatie maar meer over een infotainment show <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
Posted in General  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/200/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=200&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/05/28/microsoft-devdays-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/05/devdays.jpg" medium="image">
			<media:title type="html">devdays</media:title>
		</media:content>
	</item>
		<item>
		<title>Asp.Net MVC &#8211; AjaxOptions</title>
		<link>http://affinno.wordpress.com/2009/05/27/asp-net-mvc-ajaxoptions/</link>
		<comments>http://affinno.wordpress.com/2009/05/27/asp-net-mvc-ajaxoptions/#comments</comments>
		<pubDate>Wed, 27 May 2009 14:51:59 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Asp.Net MVC]]></category>
		<category><![CDATA[Even puzzelen]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=194</guid>
		<description><![CDATA[Ik had een mooie copy-paste actie, die helaas tot een niet te reproduceren fout leidde.
Het begon allemaal met een Ajax sectie in een MVC partial view:
&#60;%
using (Ajax.BeginForm(&#8220;AddComment&#8221;, &#8220;Comment&#8221;, null, new AjaxOptions

{
OnComplete =&#8220;AddCommentOnComplete&#8221;,
LoadingElementId =&#8220;AddCommentLoading&#8221;,
OnBegin =&#8220;AddCommentonBegin&#8221;
UpdateTargetId = &#8220;DivAddCommentAnonymous&#8221;
 }
))
%&#62;
  Toen wilde ik ergens anders een Ajax link maken. Ok, het is iets heel anders, maar ook daar wilde ik [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=194&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Ik had een mooie copy-paste actie, die helaas tot een niet te reproduceren fout leidde.<br />
Het begon allemaal met een <strong>Ajax sectie in een MVC partial view</strong>:</p>
<p><span style="font-size:x-small;">&lt;%<br />
</span><span style="font-size:x-small;color:#0000ff;"><span style="font-size:x-small;color:#0000ff;">using</span></span><span style="font-size:x-small;"> (Ajax.BeginForm(</span><span style="font-size:x-small;color:#a31515;"><span style="font-size:x-small;color:#a31515;">&#8220;AddComment&#8221;</span></span><span style="font-size:x-small;">, </span><span style="font-size:x-small;color:#a31515;"><span style="font-size:x-small;color:#a31515;">&#8220;Comment&#8221;</span></span><span style="font-size:x-small;">, </span><span style="font-size:x-small;color:#0000ff;"><span style="font-size:x-small;color:#0000ff;">null</span></span><span style="font-size:x-small;">, </span><span style="font-size:x-small;color:#0000ff;"><span style="font-size:x-small;color:#0000ff;">new</span></span><span style="font-size:x-small;"> </span><span style="font-size:x-small;color:#2b91af;"><span style="font-size:x-small;color:#2b91af;">AjaxOptions<br />
</span></span></p>
<div><span style="font-size:x-small;">{<br />
OnComplete =<span style="color:#a31515;">&#8220;AddCommentOnComplete&#8221;,</span></span></div>
<div><span style="font-size:x-small;">LoadingElementId =<span style="color:#a31515;">&#8220;AddCommentLoading&#8221;,<br />
</span></span><span style="font-size:x-small;">OnBegin =<span style="font-size:x-small;color:#a31515;"><span style="font-size:x-small;color:#a31515;">&#8220;AddCommentonBegin&#8221;</span></span></span></div>
<div><span style="font-size:x-small;">UpdateTargetId = &#8220;<span style="color:#a31515;">DivAddCommentAnonymous&#8221;<br />
</span></span><span style="font-size:x-small;"> <span style="font-size:x-small;">}<br />
))<br />
</span></span><span style="font-size:x-small;">%&gt;</span></div>
<p><span style="font-size:x-small;"> </span> Toen wilde ik ergens anders een Ajax link maken. Ok, het is iets heel anders, maar ook daar wilde ik een set AjaxOptions meegeven. Dus&#8230; <strong>copy-paste</strong>.<br />
Wel het LoadingElementId element weggehaald, maar de 2 events laten staan voor debug doeleinden met een alert erbij.<br />
Maar toen de link werd uitgevoerd en de controller een partial view retourneerde, werd deze niet, zoals het hoort, netjes in de pagina verwerkt, maar kreeg ik <em>alleen</em> de partial view te zien, in plaats van de hele pagina.<br />
Wat bleek de crux te zijn: de 2 OnXXX events horen natuurlijk helemaal niet bij een Link, en niet alleen horen ze er niet bij, maar als je ze er wel bij doet, dan krijg je genoemd gedrag.</p>
Posted in Asp.Net MVC, Even puzzelen  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/194/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/194/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/194/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/194/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/194/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/194/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/194/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/194/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/194/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/194/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=194&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/05/27/asp-net-mvc-ajaxoptions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>
	</item>
		<item>
		<title>Lambda expressions</title>
		<link>http://affinno.wordpress.com/2009/05/14/lambda-expressions/</link>
		<comments>http://affinno.wordpress.com/2009/05/14/lambda-expressions/#comments</comments>
		<pubDate>Thu, 14 May 2009 08:22:18 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Biek]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[Lambda expressions]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=185</guid>
		<description><![CDATA[Ik moet zeggen, toen ik 2 jaar geleden voor het eerst een boek over Linq las en daar een heel stuk stond over Lambda expressions, dat ik halverwege wel even achter m&#8217;n oren moest krabben: wat is dat voor iets?
Maar zoals met alles, als je het meer en meer ziet ga je zelf ook wat [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=185&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Ik moet zeggen, toen ik 2 jaar geleden voor het eerst een boek over <strong>Linq</strong> las en daar een heel stuk stond over <strong>Lambda expressions</strong>, dat ik halverwege wel even achter m&#8217;n oren moest krabben: wat is dat voor iets?<br />
Maar zoals met alles, als je het meer en meer ziet ga je zelf ook wat proberen en gebruik ik nu de volgende 2 lambda&#8217;s regelmatig.<br />
De ene is voor het selecteren van objecten uit een generic List op basis van een property van dat object, de andere is voor het ophalen van een lijst met de waardes van 1 property van die objecten (deze staat verderop in de blog ook al vermeld, maar voor de compleetheid toch nog even vermeld).</p>
<p>De case bij de eerste is: ik heb een lijst met keyword objecten. Deze hebben allemaal een property &#8216;rank&#8217;. Nu wil ik een lijst met alleen die keywords die minimaal een rankwaarde van 2 hebben. Daarvoor gebruikte ik altijd een mooie anonymous delegate die ik van m&#8217;n vriend en oud-collega René had geleerd (en het stond altijd wel biek, een <strong>anonymous delegate</strong> <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ) :<br />
<span style="color:#3366ff;"><span style="color:#0000ff;">keywords.FindAll(delegate(Keyword m) { return m.Rank &gt;= 2; });</span><br />
</span>Met een Lambda wordt het echter dit:<br />
<span style="color:#0000ff;">keywords.FindAll(m =&gt; m.Rank &gt;= 2)</span><br />
En dat is toch ook wel mooie code vind ik.</p>
<p>De case bij de 2e is: ik heb nog steeds die lijst met keyword objecten. Deze hebben naast de genoemde rank ook een value. En dat is waar ik op dit moment interesse in heb: in al die values. Ik heb dus een lijst met keyword objecten, en ik wil graag een lijst met strings gevuld hebben.<br />
De oplossing zit in de <span style="color:#0000ff;">ConvertAll</span> methode:<br />
<span style="color:#0000ff;">List&lt;string&gt; values = keywords.ConvertAll(z =&gt; z.Value);</span></p>
<p><span style="font-size:x-small;">ps.<br />
ik heb nog even opgezocht wat Microsoft eigenlijk zegt over een lambda expression:<br />
<em>A <span class="parameter">lambda expression</span> is an anonymous function that can contain expressions and statements, and can be used to create delegates or expression tree types.</em></span></p>
Posted in Biek, Linq Tagged: Lambda expressions <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=185&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/05/14/lambda-expressions/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET MVC Routing Debugger</title>
		<link>http://affinno.wordpress.com/2009/05/08/asp-net-mvc-routing-debugger/</link>
		<comments>http://affinno.wordpress.com/2009/05/08/asp-net-mvc-routing-debugger/#comments</comments>
		<pubDate>Fri, 08 May 2009 14:39:55 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[Asp.Net MVC]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[route]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=178</guid>
		<description><![CDATA[Als je net begint met het Asp.Net MVC heb je waarschijnlijk veel zaken waar je tegen aan loopt, maar 1 van de eerste is waarschijnlijk de routes: je definieert in je global.asax je routes, je opent de browser en&#8230;. daar is je view niet.
Vooral als je veel routes hebt gedefinieerd is het soms moeilijk in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=178&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Als je net begint met het <strong>Asp.Net MVC</strong> heb je waarschijnlijk veel zaken waar je tegen aan loopt, maar 1 van de eerste is waarschijnlijk de routes: je definieert in je <strong>global.asax</strong> je <strong>routes</strong>, je opent de browser en&#8230;. daar is je view niet.<br />
Vooral als je veel routes hebt gedefinieerd is het soms moeilijk in te schatten welke paden worden doorlopen en welke niet.<br />
De oplossing is simpel gelukkig: een DLL toevoegen aan je project en 1 regel code aan je global.asax, en dan zie je dit:<img class="alignleft size-full wp-image-179" title="Route%20Tester%20-%20Windows%20Internet%20Explorer%20(2)_3" src="http://affinno.files.wordpress.com/2009/05/route20tester20-20windows20internet20explorer202_3.png?w=510&#038;h=644" alt="Route%20Tester%20-%20Windows%20Internet%20Explorer%20(2)_3" width="510" height="644" /></p>
<p>Je ziet een lijst met alle routes die je hebt ingegeven, en in het groen de <strong>routes die matchen met de url</strong> die je op dat moment in hebt gegeven.<br />
Daarnaast zie je bovenin in de kleine tabel welke controller er wordt aangesproken, wel action er wordt uitgevoerd en de waardes van de eventuele parameters.</p>
<p>Hear hear:  <a title="http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx" href="http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx" target="_blank">http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx</a></p>
Posted in Asp.Net MVC Tagged: Asp.Net MVC, debug, route <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/178/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=178&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/05/08/asp-net-mvc-routing-debugger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>

		<media:content url="http://affinno.files.wordpress.com/2009/05/route20tester20-20windows20internet20explorer202_3.png" medium="image">
			<media:title type="html">Route%20Tester%20-%20Windows%20Internet%20Explorer%20(2)_3</media:title>
		</media:content>
	</item>
		<item>
		<title>Fiddler gebruik op Vista met ASP.Net site die runt op de webserver van Visual Studio (2008)</title>
		<link>http://affinno.wordpress.com/2009/04/25/fiddler-gebruik-op-vista-met-aspnet-site-die-runt-op-de-webserver-van-visual-studio-2008/</link>
		<comments>http://affinno.wordpress.com/2009/04/25/fiddler-gebruik-op-vista-met-aspnet-site-die-runt-op-de-webserver-van-visual-studio-2008/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 21:03:37 +0000</pubDate>
		<dc:creator>Michel</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://affinno.wordpress.com/?p=174</guid>
		<description><![CDATA[Zo, dat is een hele zin&#8230; 
Maar goed: stel je wilt in je site die lekker Ajax dingen doet even luisteren naar het HTTP verkeer. Je gebruikt Fiddler (in mijn geval v.2.2.2.0) en je hoort op htpp://localhost:47867/ &#8230;. niets.
De standaard oplossing is een punt (.) tussen de localhost en de dubbele punt. Dan krijg je
htpp://localhost.:47867/
Dat [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=174&subd=affinno&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p class="MsoNormal"><span style="font-size:10pt;font-family:Arial,sans-serif;">Zo, dat is een hele zin&#8230; </span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial,sans-serif;">Maar goed: stel je wilt in je site die lekker Ajax dingen doet even luisteren naar het HTTP verkeer. Je gebruikt Fiddler (in mijn geval v.2.2.2.0) en je hoort op <span style="color:#0000ff;">htpp://localhost:47867/</span> &#8230;. niets.<br />
</span><span style="font-size:10pt;font-family:Arial,sans-serif;">De standaard oplossing is een punt (.) tussen de localhost en de dubbele punt. Dan krijg je<br />
</span><span style="font-size:10pt;font-family:Arial,sans-serif;"><span style="color:#0000ff;">htpp://localhost<strong>.</strong>:47867/<br />
</span></span><span style="font-size:10pt;font-family:Arial,sans-serif;">Dat werkt alleen niet echt onder V</span><span style="font-size:10pt;font-family:Arial,sans-serif;">ista. Niet geprobeerd maar gelezen is oplossing 2: geen localhost gebruiken maar je machinenaam. Dan krijg je<br />
</span><span style="font-size:10pt;font-family:Arial,sans-serif;"><span style="color:#0000ff;">http://mydevmachine<strong>.</strong>:47867/</span> maar dat schijnt het niet goed te doen bij de interne webserver van Visual Studio.<br />
</span><span style="font-size:10pt;font-family:Arial,sans-serif;">De laatste mogelijkheid, en die deed het ook bij mij, was het localhost ip adres; en dan krijg je <span style="color:#0000ff;">http://127.0.0.1<strong>.</strong>:47867/</span></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial,sans-serif;">En dan ziet Fiddler alles voorbij komen!</span></p>
Posted in General, Tools  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/affinno.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/affinno.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/affinno.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/affinno.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/affinno.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/affinno.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/affinno.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/affinno.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/affinno.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/affinno.wordpress.com/174/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=affinno.wordpress.com&blog=4221916&post=174&subd=affinno&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://affinno.wordpress.com/2009/04/25/fiddler-gebruik-op-vista-met-aspnet-site-die-runt-op-de-webserver-van-visual-studio-2008/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Michel van Duijse</media:title>
		</media:content>
	</item>
	</channel>
</rss>