Patrick Steele's .NET Blog
Implements ICodeWithDotNet
-
.hgignore file for IntelliJ IDEA Development
Every time I start a new project in Visual Studio, I almost always put it under Mercurial source control – even a small demo project. If the project becomes serious enough, I’ll create a private repository in Bitbucket and maintain it there. After I initialize my Mercurial repository, the first thing I do is grab Nino’s .hgignore file for Visual Studio. It’s a great time-saver.
-
Automapper: Handling NULL members
A question about null members came up on the Automapper mailing list. While the problem wasn’t with Automapper, investigating the issue led to an interesting feature in Automapper.
-
Moving a local Mercurial Repository to Bitbucket
I recently got a new laptop. Part of the migration process was to move a few local Mercurial repositories into Bitbucket. Since these are just “playing around” repositories, they’ll be private, but the beauty of Bitbucket is that you get unlimited private repositories. This allows me to keep all of my little pet projects “up in the cloud” and it’s one less thing to migrate the next time I get a new machine.
-
Changing the Default Install Location of an MSI
A few months ago, I had to tweak an MSI installer. It was installing into a specific directory (named the same as the application) underneath Program Files. Since the location of Program Files can change from machine to machine, the MSI has a special token you can use for Program Files (as well as for the application name). So the current value for “DefaultLocation” of the Application Folder was:
-
Setting up Windows Live Writer for Weblogs.asp.net
Once again, I’m on a new laptop and have forgotten how to set up Windows Live Writer to post to my Weblogs.asp.net account. Thanks to Bil Simser, I’m up and running now.
-
Using Lambdas for return values in Rhino.Mocks
In a recent StackOverflow question, someone showed some sample code they’d like to be able to use. The particular syntax they used isn’t supported by Rhino.Mocks, but it was an interesting idea that I thought could be easily implemented with an extension method.
-
Xml Serialization and the [Obsolete] Attribute
I learned something new today: Starting with .NET 3.5, the XmlSerializer no longer serializes properties that are marked with the Obsolete attribute. I can’t say that I really agree with this. Marking something Obsolete is supposed to be something for a developer to deal with in source code. Once an object is serialized to XML, it becomes data. I think using the Obsolete attribute as both a compiler flag as well as controlling XML serialization is a bad idea.
-
Welcome 2011
About this time last year, I wrote a blog post about how January of 2010 was almost over and I hadn’t done a single blog post. Ugh… History repeats itself.
-
Guaranteed order in a foreach loop
I was always under the impression that the order items are returned via a foreach loop is not guaranteed. For the most part, that is correct. However, it’s not 100%.
-
EDAMLibrary : Evernote Library for C#
I recently pushed a library onto bitbucket. It’s used for integrating with the popular note-taking, cloud-syncing, capture application Evernote. I started using Evernote in February of this year and I’m addicted to it now. I scan and tag tons of information and have it easily available at all times. My data is sync’d to the cloud and accessible via a Windows client, the web and various mobile platforms (Blackberry, iPhone, Android).