This article goes over a Nullable/Optional/Maybe implementation for C#.http://twistedoakstudios.com/blog/Post1130_when-null-is-not-enough-an-option-type-for-chttp://www.reddit.com/r/programming/comments/14930f/when_null_is_not_enough_an_option_type_for_c/
Also http://devtalk.net/csharp/chained-null-checks-and-the-maybe-monad/