MEF: DLL Versions and Multiple Exports for a Class

During my talk about the Managed Extensibility Framework (MEF) at Devscovery this past week, I had two very good questions asked by the audience and promised I’d get an answer. The first one was about exporting in MEF. I was under the impression that a MEF part could have one export, but I was mistaken.…

Want to Know How to Debug Better for Free?

Recently, I did a session on Advanced .NET Debugging at the Atlanta Microsoft office and it was recorded for posterity. You can catch the three part video up on Channel 9, here, here and here. Unfortunately, the sound isn’t the best in the world, but it’s still understandable. Fortunately, all the people in the audience…

MVVM with Transaction and View Locator Example

I had a lot of requests after both of my posts about transaction with the Model-View-ViewModel (MVVM) pattern and Yet Another View Locator Pattern to provide a sample project. You asked, I listened, and here it is. I’ll walk through how I built the example. Most of the code is taken verbatim from my two…

Yet Another MVVM Locator Pattern

Been working with a lot of customers using the MVVM pattern with MEF and the issue always comes up regarding how to marry views to view models. There have a been a few musings on this, from my own ViewModel locator pattern to the even more advanced (and elegant) locator proposed by John Papa et…

Transactions with MVVM

One objection to MVVM I often hear is that it doesn’t manage transactions well. I’m not talking about database transactions or “true atomic” transactions, but those short-lived transactions that happen in the UI. With data-binding, updates happen immediately. If I pass a validation, the field is updated. Many applications, however, don’t work this way. While…

Learning Windows Azure platform Resources

I’ve assembled a short list of training materials and utilities that are helpful in learning the Windows Azure platform Windows Azure SDK v1.1 samples http://www.microsoft.com/downloads/details.aspx?FamilyID=dba6a576-468d-4ef6-877e-b14e3c865d3a&displaylang=en Windows Azure Samples: C:Program FilesWindows Azure SDKv1.1Samples.zip Windows Azure platform AppFabric v1.0 Code Samples http://www.microsoft.com/downloads/details.aspx?familyid=39856A03-1490-4283-908F-C8BF0BFAD8A5&displaylang=en C:Program Files (x86)Windows Azure platform AppFabric SDKV1.0Samples Windows Azure Platform Training Kit http://www.microsoft.com/downloads/details.aspx?FamilyID=413e88f8-5966-4a83-b309-53b7b77edf78&displaylang=en Windows Azure…

AsyncEnumerator Survey for Microsoft

If you have never used my AsyncEnumerator class (which is part of my free Power Threading library) to simplify writing code that performs asynchronous operations, then you can ignore the rest of this blog posting. I have been working with Microsoft in an attempt to add my AsyncEnumerator (or something like it) into a future…

Converting Silverlight 3 to Silverlight 4

In this video, I wanted to share just how quick and easy it is to convert a Silverlight 3 project to Silverlight 4. The steps are basically as follows: Make sure you have the Silverlight 4 tools If you use Blend or any of the interactivity extensions (for triggers and behaviors) be sure to get…

VS 2010 Launches (and video of me!)

Unless your internet connection died today you no doubt heard that a new version of Visual Studio released to the public today. It’s a big release and one most of you will be upgrading to very shortly if you haven’t already. The fact that you can still target existing .NET 2.0 applications with the benefits…

Understanding Windows Azure platform AppFabric Access Control Service Resources

Before we can begin using the Windows Azure AppFabric Access Control Service (ACS) to decouple our applications from security concerns and enable claims-based identities we need to understand the Resources contained in the Service Namespace and what role they play in the authentication and authorization infrastructure. This brief blog entry is meant to provide you…

Ten Reasons to use the Managed Extensibility Framework

One question I’m commonly asked is, “Why do I need the Managed Extensibility Framework? How do I know when to use it?” In addition to that really being two questions, I’m not sure I can tell you the top ten reasons to use MEF or whether or not it is the right tool for you.…

Using WriteableBitmap to Simplify Animations with Clones

I’m going to deviate from my typical “line of business” blog posts to discuss a topic that comes up quite a bit with Silverlight: animations. I’ve had a few projects where it’s been necessary to use animations to transition between “screens” in the application. While I use the visual state manager as often as I…