Choosing the Right Presentation Technology

How do you choose among the Microsoft .NET presentation technologies?  Use scenario-based evaluation.  At the end of the day, a technology is a set of capabilities. Map those capabilities to your scenario and requirements.  OK, great, but where do you start?  That's where our cheat sheet comes in.  As part of our Application Architecture Guidance 2.0 project, we created a cheat sheet to help you quickly find your way through the technologies:

Cheat Sheet – Presentation Technology Matrix
We posted our latest cheat sheet to CodePlex:

Presentation Technologies
Here’s the technology combinations that we identified, evaluated and cataloged:

  • ASP.NET Dynamic Data
  • ASP.NET Mobile
  • ASP.NET Web Forms
  • ASP.NET Web Forms with AJAX
  • ASP.NET Web Forms with Silverlight Controls
  • Compact Framework
  • Silverlight
  • Silverlight with AJAX
  • Silverlight Mobile
  • Windows Forms
  • Windows Forms with WPF User Controls
  • WPF Application
  • WPF with Windows Forms Controls
  • XAML Browser Application (XBAP) using WPF

That’s a lot of options, but that’s a good thing.  In a mature market, expect lots of options and specialization.  This helps you use the right tool for the job.  The challenge, of course, is knowing which one is the right tool, but that’s where our cheat sheet should help.  Ultimately, the cheat sheet is a support aid and doesn’t replace your own thinking or analysis.  Instead, it helps you consolidate some key information on the technologies, and help you consider some of the benefits and considerations.

Organizing the Technologies
To organize the technologies, we use a simple frame:

  • Technology Summary
  • Benefits and Considerations Matrix
  • Common Scenarios and Solutions

By pinning the technologies against common application types (Mobile, Rich Client, RIA, and Web App), it made it very easy for us to slice and dice the technologies by relevancy, capabilities, and scenarios.

How We Created the Cheat Sheet

We started from a base set of application types and scenarios.  We vetted from experience among the p&p development team.  Next, we reviewed with various product team members, including Brad Abrams, Pat Helland, Glenn Block, and Ian Ellison-Taylor.  Next we vetted with some customers.  It’s a work in progress and we’ve been through several iterations.  In fact, the version we posted today is version 35.   Now it’s time to share with a broader community.

My Related Posts

Comments (8)

  1. Adam says:

    Great work in gathering this information. Its always being a continous battle knowing what technology is available and what is best to use.

    This is a step in the right direction.

  2. Hello

    great work!

    I am working alone on a project that is basically a clone of the good-old-portalstarterkit.

    I am using Unity and webforms for now. My plan is to release this version and then provide a parallel path on MVC with Silverlight. The idea is to use MVC for the content part and Silverlight for the editing part.

  3. David Wade says:

    I notice that the cheat sheet does not include OBA technology that MS is supposedly pushing as a Presentation Technology.  hmmm

    I am currently working on a large form processing application that needs to work in a disconnected environment using Infopath and possibly Sharepoint but I have to wonder about their exclusion.

  4. J.D. Meier says:

    @Adam –  Thank you.  I think having frames to analyze technology helps cut through the forest faster.

    @Bakopanos – Thank you.

    @David – You can think of OBA an abstraction on top.  Just like SharePoint is built on ASP.NET.  In that case, you’re building on a higher-level app platform.  The cheat sheet is focused on the lower level platform options.   For OBA, check out the OBA chapter in the Application Architecture Guide at

  5. David Wade says:

    Thanks so much.  I have gotten all jazzed up about building n-tier apps with Office as a front end and integrating common apps with custom code.  

  6. As part of our patterns & practices Application Architecture 2.0 project , we created a set of application

  7. In my previous post, Choosing the Right Presentation Technology , I mentioned that we posted our cheat

Skip to main content