Rediscovering IEnumerable

My recent experiments with LINQ have taken me to rediscover the power of the IEnumerable interface in .NET. As many of you know by now, one of the cornerstones on which LINQ is built and that makes it so accessible is that it fully supports the very basic IEnumerable interface.</p>...

Statistics in German

After the upgrade to dasBlog 1.9 a few weeks ago, I decided to update my blog template to include the blog statistics macro on the left sidebar, and that has worked fine so far. However, for some reason, this morning the statistics started appearing in German! I ended up forcing...

On Long Identifier Names

I'm all for using descriptive names to identifiers (classes, methods, properties, and so on), however, I also try to keep them to a reasonable length. Too long names are harder to remember, easier to misspell (even with intellisense) and annoying all around. Sometimes, however, you can't avoid ending up with the long ones. I...

Runtime Services in App.Config in WF

In Windows Workflow Foundation, you have two different ways of adding runtime services to the Workflow Engine: Through code, by using the AddService() method of the WorkflowRuntime class Through the application configuration file, by adding an entry to the <services/> tag. The latter is possible not only for the default...

Things to know about WF

Harry Pierson comments here and here about "stuff he didn't know about WF". Pay attention; some good tidbits of knowledge you'll find in there. Pay particular attention when he says which features of WF as implemented on V1 are "toys"; it will save you a lot of grief down the...

IParameterInspector and Faults

One thing I didn't mention in my past articles about the IParameterInspector in Windows Communication Foundation is how it behaves when an operation returns a fault (throws an exception). The answer is: It doesn't. When the operation faults, the AfterCall() method in your parameter inspector will never be called. Technorati:...

Changing E-Mail Address

I've been using my mvps.org address for the past 7 years, but I've been having too much problems with it lately like emails getting lost on the way or getting rejected. So, with much regret, I've decided to migrate a lot of my "regular" email over to a new address...

A Puzzle Solved

One of my favorite pastimes is solving jigsaw puzzles; it's a lot of fun and I have several around I've worked on (even more than once). Here's the latest one I've been working on and just finished:   It was a birthday present from my sister; it's a small, 1000...

No Trackbacks for you!

Like others, I had to finally cave in and disable trackbacks on my blog for now. I deleted more than 400 spam trackbacks over the weekend, or, rather, I had to delete the same 20 spam trackbacks on a single entry over and over again. Maybe I'll implement a way...

Multiple Definitions in .Net FX 3.0

One of the things I've found very curious about the .NET Framework 3.0 libraries is that it has multiple definitions of what I presume are esentially the same classes. Have you noticed that there are two DependencyProperty classes, two DependencyObject classes, two PropertyMetadata classes and so forth? One for Windows...