Summary 09.05.2009

09/05/2009

ASP.NET MVC

Keyvan continues the posts about ASP.NET MVC showing how to implement your own CustomControllerFactory taking in consideration the client regional settings.

Debugging

Tess points out StackViewer – a cool tool for viewing the stack trace of a running applications in .NET 2.0. As it only attaches, takes a snap of the stack and then detaches, it makes a perfect candidate for debugging performance/hangs in various applications.

Parallel Programming

Soma announces the release of Axum – a language designed for building parallel applications. Matthew Podwysocki also has some details about Axum. For more information, go to the Axum Team Blog.

WCF

Christian Weyer has some excellent posts on what’s new in .NET for WCF:

ASP.NET

Scott Galloway has a very interesting post about removing the CSS inline style GridView comes with.

NHibernate

Ayende continues his series of inspiring posts with a couple more:

Sharp

Luis continues talking about Sharp :

Multithreading

Luis has also started a series of posts about multithreading:

kick it on DotNetKicks.com


Summary 27.04.2009

27/04/2009

Sharp

Luis presents how the duplicate entity validator works and what is inside the SharpArch.Web namespace.

DDD

Jonathan Oliver joins the debate Greg and Ayende had over the past few days, sharing his ideas on the repository pattern. Jonathan’s concerns summarize some of the most frequently asked questions around repositories:

  1. How do we best query the repository to find the particular aggregates that we care about?
  2. How do we handle UI concerns such as paging within the repository?
  3. Does the repository even care about UI concerns?
  4. How do we display domain objects to the UI (this is only slightly related to the repository pattern).
  5. How do we modify our domain objects to support lazy loading?

ASP.NET MVC

Keyvan Nayyeri, one of the authors of Beginning ASP.NET MVC 1.0, writes about IRouteHandler.

The storm continues as Chad Meyer presents his opinion on MVC vs. WebForms. While Chad puts the two technologies head to head, go and watch this video where ASP.NET MVC and WebForms are combined. Simone Chiaretta, the other author of Beginning ASP.NET MVC 1.0, shares his thoughts on when and why ASP.NET MVC should be adopted.

ASP.NET

Scott Mitchell announces that another four hosting tutorials are now available on www.asp.net. These tutorials follow the first six tutorials on hosting.

Windows 7

The RC release will be out this week and the Public Sector Developer Team published a few useful links with the changes from the beta.

Visual Studio 2008

Rick Strahl gives another great tip on how to create template projects.

Internet Explorer 8

Check-out this interesting video on box sizing and vertical text. John Hrvatin, the Lead Program Manager on IE Team, has some great tips on how to improve the application performance with IE8.

TDD

Karl Seguin writes about the 7 phases of unit testing. Where are you?

ASP.NET 4.0

Remember Control Adapters? Adapter Groups were supposed to be included in ASP.NET 4.0 but Scott Galloway announces that they will be out in the next beta.

Agile development

Nick Malik has a great article on agile development and agile architecture and what are the required changes from the classic waterfall and BDUF approach in order to improve the delivery.

Architecture

Karl Seguin continues his tutorial on building a validation framework showing how client-side validation can be done.

C#

Eric Lippert as usual has a great post explaining what is wrong when value types are by definition as variables allocated on the stack.

kick it on DotNetKicks.com


Summary 24.04.2009 – 26.04.2009

26/04/2009

Visual Studio 2008

I remember looking for a way to start a single project in a solution having multiple projects. Now, the Web Developer Tips team has put a nice post about it.

Enterprise Library

David Hayden has a new screencast on Data Access Application Block.

Expression

Somasegar has a nice post on SketchFlow – a add on for Expression Blend 3. It seems to be a great tool for providing prototypes in the early stages of the project. You might also take a look at Balsamiq for creating great UI mockups in no time.

Entity Framework

Moses wrote a few days ago about his wish of having something like DataLoadOptions for ObjectContext. Stuart Little wrote today a very interesting post with a few extensions to ObjectQuery.Include to make it strongly typed. I think that it could be something that Moses can use for his approach.

Alex James continues his series of tips showing how we can use AttachTo() in combination with projections and avoid loading unnecessary properties.

ASP.NET

Scott Galloway has a nice post on how to build a ASP.NET control to combine and compress CSS files, reducing the number of requests and the traffic between the client and the server.

If you are looking for a DataReader – JSON converter, go check Rick Strahl post!

DDD

Yves continues his saga showing the importance of assertions for controlling the effects of commands.

NHibernate

Peter Bromberg has a nice overview on Fluent NHibernate automapping.

Luis Abreu takes a look to NHibernate Validator here and here while analyzing  S#arp framework.

ASP.NET MVC

After Oxite and Kobe, there is a lot of debate on the framework itself.

Karl Seguin asks whether ASP.NET MVC is half-baked or not. Jeffrey Palermo has a nice list of cases when ASP.NET MVC should NOT be used. Jeremy Miller has its own list of pros and cons for using ASP.NET MVC. Rob Conery has an excellent post on why we should learn MVC.

Scott Allen has a very interesting post on model binders.

C#

CoNatural continues the series on asynchronous programming showing how to search asynchronously with ASP.NET MVC and JQuery.

Design patterns

Greg and Ayende continue their debate on the repository pattern. Greg says that having a repository makes an explicit boundary around our domain. By simply having a contract of those boundaries we can adhere to the “onion architecture”. Ayende replies to Greg about the lack of explicit boundaries in cases such as transparent lazy loading. He also presents his concerns about the need of abstracting away the persistence without having a clear requirement in this direction.

I think that both of them have interpreted each other statements without having the other’s complete context and as Ayende says in his post, not having the complete context invalidates the entire argument.

Sharp

Luis Abreu talks about repositories in S#arp.

Architecture

Karl Seguin starts a very interesting series of posts showing how we can roll our own validation framework.

Ayende has a nice post about the differences between infrastructure and architecture.

kick it on DotNetKicks.com


Summary 22.04.2009

23/04/2009

Visual Studio 2008

The Visual Studio Team System Database Team and Gert Drapers announce the release of Microsoft Visual Studio Team System 2008 Database Edition GDR R2.

Visual Studio 2010

The SRL Team just published a post on how to have custom reports in Visual Studio 2010 using Excel.

ASP.NET MVC

Rob Conery wrote an interesting article on why we should learn ASP.NET MVC.

DDD

Yves continues his saga talking about the importance of interfaces as a way to express the intention.

Entity Framework

Alex James continues his posts on EF tips with an interesting one about caching the reference data.

S#arp

Luis Abreu continues delving into the Sharp Framework presenting the repository interfaces.


Summary 17.04.2009 – 19.04.2009

21/04/2009

Visual Studio

Another great podcast on Windows Workflow 4 is available on Channel 9.

Design patterns

Oren has posted a very nice article on the repository pattern which is used as a singleton in many cases due to lack of understanding. Oren advocates for using directly NHibernate instead of using the additional repository pattern. The problem in question here is the fact that the repository contains methods such as FindXXX which according to DDD principles should belong to query objects and that repositories should deal only with domain state changes. Udi Dahan wrote an article on whether to use query objects or methods in the repository two years ago. Very often the repository is used for achieving persistence ignorance in a DAO fashion. In DDD, the repository has the precise role of maintaining the integrity of aggregate roots.

Following his above mentioned post, Oren wrote another one explaining how mocking NHibernate can be achieved when taking the above mentioned approach where repositories aren’t used.

Justin Etheredge replies to Oren’s approach which uses the Query Object pattern considering that allowing an IQueryable<> from the repository would allow the upper layers not only to do presentation concerns actions such as paging and sorting but also modifying the query itself.

Architecture

I think that Oren’s posts on the fact that the DAL goes all the way to UI, coins the exact problem with the classical three layers applications that we encounter very often.

ASP.NET MVC

Kobe tries to be the starter kit from Microsoft for building ASP.NET MVC applications. So far, it has failed. Go and check my previous post to get all the details. Oren has also a response to Phil which leads him to the same conclusion as the one from by previous post:

Stop shipping official guidance package without involvement from the community.

Application Lifecycle Management

David Chappell announces a series of posts on Application Lifecycle Management without having the focus on Microsoft’s products an technologies.

NHibernate

Oren Eini has another posts on named queries and one-to-one mapping.

Peter Bromberg wrote a nice article on Fluent NHibernate automapping.

Gabriel Schenker has published his second article on Fluent NHibernate. He also has a nice article on 2nd level cache and multiple databases.

Velocity

If you are starting with Velocity, you might want to check Andrea Colaci’s overview.

The Velocity team gives a short explanation on regions and high availability and a tip on how client performance can be increased.

Azure

Rob Bagby posted the third part of his tutorial on building a Azure shopping cart.

TDD

Brad Wilson has a very interesting post where he chooses Design by Example instead of TDD.

Internet Explorer 8

The JScript blog wrote on how JScript versioning works in IE 8.

RIA Services

Fredrik Normen has two interesting posts on RIA having in mind Silverlight.

MS Deploy

The RC1 release of MS Deploy is available.

Sharp

After finishing his ASP.NET MVC series, Luis Abreu started to talk about the S#arp framework. The first two posts present the BaseObject class and value objects.

Entity Framework

Simone Ince has an interesting series on auditing presenting the types of auditing and how data auditing works with Entity Framework and the auditing implementation.