.NET Blog

Free. Cross-platform. Open source. A developer platform for building all your apps.

MIX09 talk on Core CLR

 For everyone who attended MIX this year, we hope it was a lot of fun. Brandon from our team, gave a talk on "Going Inside Microsoft Silverlight: Exploring the Core CLR" at MIX09 last week. The talk covers how the desktop CLR was slimmed down to be used for Silverlight, and in the process, covers Core CLR's architecture (...

Exceptions out of Fault/Finally

 Assumption: This write-up assumes that you are familiar with the managed exception handling constructs (e.g. catch, filter, fault, finally). If not, you may want to read this and also refer to the CLI specification. Managed exception handling exposes constructs to handle an exception (e.g. catch and filter blocks) and also to ...

New TlbImp Release on CodePlex – Full Customization of Interop Assemblies

It has been a few months since our last release of TlbImp on CodePlex. We recently released a new version of TlbImp – please visit the Codeplex page for this tool to find out more. In this release, we’ve introduced two major features: 1. Ruled-based customization of interop assemblies 2. TlbImp regression test tool Ruled-based ...

Preview of Code Contract Tools Now Available

We’ve mentioned Code Contracts over on the BCL Blog a few times now, but never yet on the CLR Blog.  Basically, Code Contracts are a way to add preconditions, post-conditions, and object invariants to your code.  The goal is to help you catch developer errors earlier in the cycle.  In my Introduction to Code Contracts post...

Resource Manager and .Net Interaction with ServiceControlManager

Kim Hamilton has a couple of excellent posts on the BCL Team blog. In the first post on Working with the ResourceManager, Kim talks about the basics of resource generation, constructing a ResourceManager and how resource fallback works. The post also covers debugging resource loading failures using Fusion logs, Reflector and Resview.  ...

CLR Inside Out – Isolated Storage in Silverlight 2

(image)   The March installment of the “CLR Inside Out” column in MSDN magazine is now available on line.  This month we have an article from Justin Van Patten on Isolated Storage in Silverligth 2. You can find a list of all “CLR Inside Out” articles here.  As always, please let us know...

CLR Inside Out – Handling Corrupted State Exceptions

 (image) As Andrew pointed out in his recent post, the February installment of the “CLR Inside Out” column in MSDN magazine is now available on line.  This month we have an article from Andrew Pardoe on Handling Corrupted State Exceptions.You can find a list of all “CLR Inside Out” articles here. ...

Why catch(Exception)/empty catch is bad

  You’ve seen the advice before—it’s not a good programming practice to catch System.Exception. Because managed exceptions are hierarchical, catching the top of the hierarchy—e.g., catch(Exception)—is an easy way to make sure that you catch all exceptions.  But do you really want to catch all ...

Catch, Rethrow and Filters – Why you should care?

 A very common pattern in the usage of managed exception handling is that of catching an exception, inspecting it's type and rethrowing it once you realize it was not the exception you wanted to handle. Below is such an example (and should be avoided in preference to another approach described further below in the writeup) that uses ...

Understanding the Binder – Part 1

 This is an introductory post on the internals of CLR Binder.     What does the Binder do? CLR's Binder is a piece of code that, when given an assembly name, determines where the assembly is and binds to it. So how does the Binder locate assemblies? Let's assume that you are loading an assembly (let’s ...