in

Dé specialist in .NET trainingen en consultancy

Ronald Harmsen

  • Entity Framework 4.1 Update (RC)

    Scott Guthrie heeft op zijn blog een update van het Entity Framework aangekondigd, deze is nu te downloaden en bevat o.a. een aantal updates op het gebied van de zogenaamde 'code first' approach

    http://weblogs.asp.net/scottgu/archive/2011/03/19/rc-of-entity-framework-4-1-which-includes-ef-code-first.aspx

    Posted mrt 28 2011, 08:45 by Ronald with no comments
    Filed under: ,
  • ASP.NET 4 op IIS 6

    Voor een klant wilde ik vandaag de nieuwe webapplicatie op hun testomgeving plaatsen. De webapplicatie is is gebouwd met ASP.NET 4.0 en de testomgeving draait op Windows 2000 met IIS6.

    Nadat ik .NET 4.0 had geinstalleerd, een nieuwe webapplicatie en applicationpool gemaakt, leek het erop dat ik het zou gaan werken. Bij het openen van de url kreeg ik echter een melding dat de pagina niet kon worden geopend. Zelfs na het expliciet opgeven van de default.aspx kreeg ik dezelfde melding.

    Alle onderdelen die door IIS zelf worden geserviced waren wel beschikbaar, plaatjes en een test.html pagina. De webapplicatie was dus wel aanwezig op de IIS server en de configuratie leek te kloppen.

    Vervolgens nogmaals alles settings nagelopen, MIME-types gecontroleerd, nogmaals iisreg gedraaid etc., maar helaas met hetzelfde resultaat.

    Met enig zoekwerk bleek dat de .NET 4.0 isapi wel geregistreerd was bij IIS, maar nog niet geactiveerd.

    Na activering werkte de webapllicatie zoals bedoeld.

    De uiteindelijke oplossing heb ik hier gevonden: http://johan.driessen.se/posts/getting-an-asp.net-4-application-to-work-on-iis6

  • Ben jij een professional of ontwikkel je software?

    Gisteravond heb ik deze webcast http://www.parleys.com/#st=5&sl=5&id=1491 van een sessie van Robert C. Martin bekeken. Hij heeft een aantal boeken op zijn naam staan waaronder het boek'Clean code' wat iedere professionele ontwikkelaar gelezen moet hebben.

    In deze sessie legt hij uit hoe wij (ontwikkelaars) al jaren software bouwen en hoe elk project kennelijk mislukt, ook al lijkt het systeem dat we bouwen te werken. Met als resultaat dat de ontwikkelaars boos zijn op de managers vanwege de tijdsdruk en onrealistische planningen. En de managers zijn boos op de ontwikkelaars omdat ze het systeem niet op tijd of niet werkend opleveren.

    Vervolgens neemt hij ons mee door de afgelopen decennia en vertelt wat ons vakgebied zoal aan 'silver bullets' heeft bedacht. De overstap van assembly naar C en OS-en, OO, Agile, Scrum etc. etc.

    Het belangrijkste wat daarbij wordt vergeten, is onze houding als software ontwikkelaar. Gedragen we ons als een professional, zoals bijvoorbeeld een arts of een advocaat? Of bouwen we software, die misschien wel werkt, maar dát kunnen we niet bewijzen?
    Herken je jezelf in het volgende? "We hebben hier wat smerige shortcuts genomen, die eigenlijk niet goed te onderhouden zijn. Maar we moesten wel, gezien de tijdsdruk". Wel eens een chirurg horen zeggen: "We hebben de wond maar niet gesloten, want de operatie tijd zat erop" ?

    De conclusie is dat als je software kunt ontwikkelen, je niet automatisch een professional bent. Hiervoor zijn een aantal gedragsregels en een bepaalde instelling nodig. Een mooie start is het 'Manifesto for software craftsmenship'.

    In het kort zijn dat de dingen waar mijn collega's bij Oosterkamp en ik ons voor inzetten. Hoe bouw je samen met je opdrachtgever, werkende software (inclusief het bewijs dat het werkt), die goed in elkaar zit (en dus onderhoudbaar is) én waarbij continu waarde voor de eindgebruiker wordt toegevoegd.

  • RIA Services templates not showing in Visual Studio 2010

    As I am preparing a talk on the new cool ways to build Silverlight applications in VS2010, I installed the Microsoft Silverlight 4 Tools for Visual Studio 2010 Beta 2.

    These tools contain the 'Silverlight Business Application' project template so you can quickly setup a business application in Silverlight with RIA services. After installing the tools (and installing it again...) the project template isn't there.. WTF ?!?!

    As always I used the 'Google is your friend'-pattern and found the solution: if you have installed previous versions of RIA services (i.e. for Visual Studio 2008) the installer internally crashes and doesn't install the templates. The solution is to remove all previous versions of RIA services and install the SL 4 tools again.

    You can read more here.

  • PDC09, things are getting better...

    Ok, i'm taking back the lousy goodiebag comment...
    Microsoft gave all developers a brand new touch laptop today!!

    The keynote was great this morning, lots of humor and news on how to build and monitor a product (stories from Windows7 productteam).
    I really like the presentation-style of Steven Sinofsky..

    Also the new IE9 was presented. Lots of improvement here, rendering is actualy fast and better quality. On channel 9 are a lot of videos available on all the new stuff.

    Next was a presentation on Silverlight 4 by Scott Guthrie. Silverlight 3 is already installed on 45% of all internet connected devices worldwide.
    Silverlight 4 brings webcam support and you can apply WPF effects directly on the moving image.
    SL4 also has smooth IIS videostreaming. The IIS streaming alsow supports streaming tot the populair iphone.

    Support for business applications is also provided: printing, clipboard access, dragdrop, commanding, rich text and much more... great ! The SL4 beta is downloadable as of today.

    One of the best features is that SL can now share common .NET assemblies, so no more recompiling! And you can use binary transport with WCF in SL4 as well....

    And if that isn't enough also databinding and code generation has improved big time.

  • New stuff in entity framework 4

    Today I visited a session on entity framework. Lots of cool new stuff in .NET 4.0, finally we get poco objects. And as a matter of fact there is a new feature available as of today in an additional download with even more improvements, like generating your poco objects from the edmx model. The best part is you can change the way code is generated by editing the T4 templates in VS2010. This way it is finally possible to create a testible datalayer without importing all the EF stuff. The EF team also created classes to support offline changing of objects, like you could in the dataset days (remember diffgrams?). This is particulairly good when you send your objects over the wire with WCF. When you send the changed object back, the host can reconnect your entity to the datacontext and apply the correct actions on the datastore.
  • PDC TDD vs BDD

    Currently I am at the birds of a feather session on TDD vs BDD hosted by fellow Dutchmen Dennis Doomen. Nice interactions and great to see how other developers think about the subject and apply it in their teams.
  • PDC09 First comments

    Today the PDC really started.... After partying with Palermo last night we were actually early here today. PDC09 is a little disappointing this year, no breakfast, lousy goodiebag etc. The keynote didn't bring much news. Azure is being highly promoted and will be ready in feb 2010. SQL for Azure is much better and supports t-sql from management studio and supports transactions as well. It is also possible to host your own virtual pc image in Azure.. Cool!
  • Windows 7 and Microsoft MOC material

    This week I have tried to setup my notebook with Microsoft MOC material for a training I have to do next week.

    Unfortunately this isn't easy... Some of the installers are blocked on Windows 7 and Microsoft Virtual Server can't be installed on Windows 7.

    Until I found this link http://tfl09.blogspot.com/2009/08/windows-7-and-virtual-server.html which guides you through the process and it works !!

     

     

  • Nokia N97 & .NET Compact Framework

    This week I switched from a Windows Mobile phone (HTC Touch Pro) to a brand new Nokia N97. I really like this phone, it is fast and the usability is great. It only has one disadvantage: it doesn't run Windows Mobile so I can't build .NET apps for it... With some Googlin' I found a solution to this: a .NETCF runtime for Symbian !! And there is even a free developer version available... Great! I am going to play around with this. More info at : https://www.redfivelabs.com/content/NETonSymbian.aspx
  • WTF: WCF Timeout when the system date or time changes !

    Today I worked on a bug report which took me a while to understand.
    When the user changed the date the WCF Channel threw an exception....

    After some testing I saw that it only occurs when you set the date to a date in the future, changing the date to some day in the past doesn't reproduce this exception.

    To support my first thoughts I have built a very simple WCF service with a simple console client that kept calling the service. When I changed the date to 31 dec 2009 the client throw an exception too! So the bug isn't really in my code but in the WCF framework :-(

    The quick solution is to recreate the proxy when the channel faults, so I can 'fix the bug'.
    Now I have to find a real solution to this, when I have found it I will post it here.

    Ideas anyone ?

    Posted jul 23 2009, 08:38 by Ronald with no comments
    Filed under: ,
  • My new micro .NET toy arrived!

    After attending a session on the .NET Micro Framework, I decided i need ;-) a testboard to start playing with this technology.
    During a short quest for possible devices (and where to order them!) i have choosen the TahoeII dev-kit by devicesolutions.net. Ordering was simple and after 1 day it arrived by mail.

    This .NET Micro Framework thingy has some sensors, buttons, connectors, SD-card slot, USB connection, ethernet and the most beautiful part: a touchscreen panel!
    It supports (a micro-subset of) WPF and I have build my first WPF app on the device, wich was very simple and most of all fun...

    .NET Micro Framework Development Kit

    I have started building a remotecontrol app on this device and keep you posted on results and code :-) !

  • Webapps: Who needs to report progress ?

    Ever needed an animated gif to report 'being busy' ? Check out this website to generate your own: http://www.ajaxload.info/
    Posted mrt 09 2009, 10:23 by Ronald with no comments
    Filed under: , ,
  • Finally: Build faster apps with parallel support

    .NET 4.0 brings you parallel extensions!

    The thread pool has been enhanced with great new features. The new features can be accessed from the Task API. The Task API can be used similar to the Thread class and offers some advanced features. For the tasks to queue up, the pool now not only includes a global queue but also a local queue for every thread in the pool. This can enhance performance because of data cached in the CPU.
    With the new API, other than starting tasks some more features: tasks can be started in a parent/child relationship, it is possible to suspend/continue/wait/cancel tasks, and get results from the task (using the Future class). This class might be renamed to Task as well (in the future).

    A common pattern is using threads in a loop to perform some actions on a list of items. The Parallel class gives an implementation of this pattern. Parallel.ForEach offers several overloads to do several actions in parallel with the thread pool.

    More info: http://channel9.msdn.com/pdc2008/TL26/

    If this isn't enough for you take a look at Microsoft's CCR and DSS Toolkit 2008 and the technologies it contains for building loosely-coupled, highly concurrent, and distributed applications.

    Watch the complete session at: http://channel9.msdn.com/pdc2008/TL55/

    More info at http://www.microsoft.com/ccrdss

  • Weer iets geleerd ??

    Vandaag kwam ik achter een coole operator in C# (vanaf v2.0) die ik nog niet eerder had gezien: de zogenaamde ?? null coalescing operator.

    Regelmatig kom je in een situatie waarin je een bepaalde variabele op null wilt controleren en dan een andere (default) waarde wilt teruggeven.
    Dat zou je zoals hieronder kunnen doen:

    int ?i = null;
    if ( i==null )
       Console.WriteLine( 0 );
    else
       Console.WriteLine( i );

    De verkorte schrijfwijze zou ook zo kunnen:

    int? i = null;
    Console.WriteLine( i == null ? 0 : i );

    De verkorte schrijfwijze met de ?? operator is:

    int? i =null;
    Console.WriteLine( i ?? 0 );

    Allen hebben hetzelfde resultaat, maar de laatste is toch veel simpeler ?

    Posted mei 29 2008, 08:46 by Ronald with no comments
    Filed under:
More Posts Next page »