When you want to access nested properties on an object, e.g. Person.Address.Postcode, it’s annoying and bloated having to write this as a series of variable assignments and null checks at each stage if the properties are nullable. The set of extensions below allows the following example: public string GetSomething(A myClass)…
using System; namespace Extensions { public static class DateTimeExtensions { public static int Age(this DateTime birthDate) { return Age(birthDate, DateTime.Today); } public static int Age(this DateTime birthDateTime, DateTime atDateTime) { var birthDate = birthDateTime.Date; var atDate = atDateTime.Date; var age = atDate.Year – birthDate.Year; if (birthDate.AddYears(age) > atDate) { age–;…
Simple, but a few non-obvious things required: 1. Add a reference to System.Windows.Forms 2. Add a [STAThread] attribute above the Main method (see here for more information) 3. Now you’re ready to use the methods on Clipboard to write to the clipboard: … using System.Windows.Forms; namespace MyNamespace { public class…
Whereas ELMAH used to work pretty much straight out of the box, with MVC 3, a change to the global.asax.cs template means that ELMAH won’t automatically catch all errors, since MVC 3 has some built in error handling when custom errors are enabled. To remove this and let ELMAH catch…