C#

“CONSIDER providing method Close(), in addition to the Dispose(), if close is standard terminology in the area” considered deprecated

Long Paths and .NET

Iterator Methods

Math.Round(value) does to-even rounding

Windows Store production mill

The case of the not-so-useful XBF error

Data virtualization in Windows Phone 7.1 (or Why INotifyCollectionChanged is fundamentally broken)

Persisting Azure Mobile Services authentication tokens and handling expiry

Accessing Private Fields and Properties

Introducing EffectiveIoC

Dependency Injection

Azure Table Storage and the Great Certificate Expiry of 2013

async/await Tips

IDisposable and Class Hierarchies

The Dispose Pattern as an anti-pattern

Introduction to Productivity Extensions

Thread synchronization of non-atomic invariants in .NET 4.5

Thread synchronization of atomic invariants in .NET 4.5

Visual Studio 2010 Best Practices published

Automated Testing Isn’t Just for Business Logic

Dispose Pattern and “Set large fields to null”

“Virtual method call from constructor” What Could Go Wrong?

Software Design and First Principles–Part 0: Concepts of Object Orientation

Avoid the volatile Modifier

C#, Async, Limits, oh my!

If You’re Using “#if DEBUG”, You’re Doing it Wrong

Developing Windows Services in Visual Studio

Fluent Builders, Part 1

Deep Dive on Closure Pitfalls

More on Async Functions

A New Asynchronicity Awaits You

Book Review: WCF 4.0 multi-tier services development with LINQ-to-Entities

Using the dynamic Keyword in C# to Improve Object Orientation – A Follow-up

Using the dynamic Keyword in C# to Improve Object-Orientation

Refactoring with Visual Studio 2010

Modify VS 2010 Template to Reference System.Configuration

Unit testing WCF data contract serialization.

DataContractSerializer.ReadObject is easily confused.

Evolving code over time

DevTeach 2009 Vancouver

Pass-through Constructors

Pontificating Virtual Parameterized Constructors in C#

.NET 4.0, Evolving .NET Development

Becoming a Visual Studio Jedi Part 1

Trials and Tribulations of DataGridView, Column Selections, and Sorting

DataGridViewColumn.Frozen

ITSWITCH #1: Answer

ITSWITCH: #1

Nested Types

Entity Framework Petition of Vote of Non Confidence

Comparing CodeRush Refactor! Pro and Resharper 4, part 1 or N — first glance.

Fundamentals of OOD Part 3: Method Cohesion

Spaces or Tabs?

RFC: Conditionals on false

Fundamentals of OOD, Part 2 – Encapsulation Scope

Fundamentals of Object-Oriented Design (OOD) Part 1

Overcoming problems with MethodInfo.Invoke of methods with by-reference value type arguments

Resharper Isn’t Always Smart

Licences for Microsoft products

Single-Entry, Single-Exit, Should It Still Be Applicable In Object-oriented Languages?

My Wishlist for C# 4

A Time and Place for Code Comments

"Object is currently in use elsewhere" error.

Formatting/parsing for a specific culture redux

Visual C# Developer Center Article

Formatting/parsing for a specific culture

Bridges and Factories

Dependency Injection

New warning CS0809 in C# 3 (Visual Studio 2008)

Using Exceptions For Normal Logic Flow

Thread.Abort is a Sign of a Poorly Designed Program

Exception Logging

Performance Implications of try/catch/finally, Part Two

Performance Implications of try/catch/finally

The Religion of Class Member Prefixing

Oww, my brain hurts. Extension methods *will* cause me grief.

Accumulative Construction

Contribution to Microsoft Visual C# Develper Center

Guest Blogging on Microsoft Canada Developer Connection

Visual Studio 2005 Clean doesn’t clean everything

Writing Solid Code

Code Analysis: How to Correctly Resolve CA1300 – "Specify MessageBox Options"

Changing TextBox Text as an Undo-able Action

Docking With Run-Time-Created Controls

SYSK 149: Performance Analysis of the 'yield return' Statement

Sortable Value Type Code Snippet

A code snippet for Visual Studio 2005 that implements a skeleton value type adhering to Framework Design Guidelines


msmvps (275) Software Development (101) .NET Development (91) C# (87) Uncategorized (61) Design/Coding Guidance (50) Software Development Guidance (33) DevCenterPost (31) Visual Studio 2005 (19) Visual Studio 2008 (19) Patterns (15) Visual Studio 2010 (14) .NET 2.0 (14) Non-development (13) Pontification (12) August 2008 (12) .NET 3.5 (12) .NET 4.0 (11) January 2008 (11) Visual Studio 2010 Best Practices (10) General (10) September 2006 (10) Architecture (9) July 2008 (9) February 2008 (9) C# 3.0 (9) .NET 4.5 (8) April 2014 (8) May 2008 (8) Microsoft (8) November 2008 (8) October 2006 (7) July 2006 (7) June 2008 (6) March 2008 (6) June 2007 (6) April 2010 (6) February 2010 (6) Azure (5) Software Development Principles (5) Windows Store (5) Multithreaded (5) February 2014 (5) AntiPattern (5) November 2011 (5) Interesting Find (5) December 2007 (5) May 2007 (5) March 2007 (5) February 2007 (5) OOD (5) Open Source (4) Windows Phone (4) Visual Studio 2012 (4) March 2013 (4) November 2012 (4) September 2012 (4) Unit Testing (4) Visual Studio (4) Product Bugs (4) Resharper (4) October 2007 (4) DevTeach (4) Visual Studio vNext (4) Message-Oriented Architectures (4) May 2011 (4) December 2010 (4) C# 4 (4) .NET 3.x (4) May 2010 (4) WinForms (4) March 2009 (4) June 2023 (3) September 2022 (3) Software Development Practices (3) July 2014 (3) May 2014 (3) Security (3) Windows Phone 8.1 (3) Windows Phone 8.0 (3) Random (3) October 2013 (3) C# 5 (3) Concurrency (3) TDD (3) February 2012 (3) Code Smells (3) January 2012 (3) Async Functions (3) October 2008 (3) September 2008 (3) August 2007 (3) April 2007 (3) C++ (3) Software Development Workflow (3) September 2011 (3) Distributed Systems (3) MOM (3) WCF (3) October 2010 (3) C# 4.0 (3) DDD (3) January 2009 (3) October 2023 (2) ASP.NET (2) Cosmos DB (2) Optimistic Concurrency (2) May 2023 (2) December 2022 (2) June 2022 (2) September 2018 (2) December 2017 (2) June 2017 (2) February 2015 (2) Tips (2) August 2014 (2) XAML (2) Heartbleed (2) March 2014 (2) Visaul Studio 2013 (2) January 2014 (2) Mobile (2) Windows Phone 7.1 (2) April 2013 (2) EffectiveIoC (2) January 2013 (2) Visual studio 2010 Best Practices (2) April 2012 (2) Code Analysis/FxCop Warning Resolutions (2) SCC (2) Framework Bug (2) Pop Quiz (2) Poor UI (2) MVP (2) C# 3.0 Breaking Changes (2) C# Nugget (2) September 2007 (2) July 2007 (2) November 2006 (2) August 2006 (2) March 2006 (2) Subversion (2) SVN (2) DevTeach YOW 2011 (2) October 2011 (2) Rant (2) March 2011 (2) November 2010 (2) June 2010 (2) July 2009 (2) April 2009 (2) ALT.NET (2) Visual Studio 2008 SP1 (2) Git (1) .NET (1) Aspire (1) Entity Framework (1) ETag (1) Domain-Driven Design (1) Repository (1) Application Service (1) HTTP (1) February 2023 (1) November 2022 (1) October 2022 (1) August 2022 (1) Markdown (1) Tips & Tricks (1) Workplace (1) Agile (1) December 2019 (1) REST (1) Versioning (1) November 2019 (1) June 2019 (1) April 2019 (1) February 2019 (1) August 2018 (1) July 2017 (1) Visual Studio 2017 (1) May 2017 (1) Message-oriented (1) September 2016 (1) March 2015 (1) September 2014 (1) LongPath (1) Apps (1) GIT (1) SkyDrive (1) December 2013 (1) Azure Mobile Services (1) C/C++ (1) Win32 (1) July 2013 (1) Productivity Extensions (1) async (1) February 2013 (1) health/fitness (1) August 2012 (1) May 2012 (1) December 2011 (1) Code Contracts (1) DbC (1) Definition (1) DevTeach YUL 2008 (1) techdays2008 (1) Connect Issue (1) Connect Suggestion (1) Kaikaku (1) Kaizen (1) Lean (1) ITSWITCH Answer (1) ITSWITCH (1) Asynchronous Programming Model (APM) (1) TCP (1) CodeRush Refactor! Pro (1) Reader Questions (1) April 2008 (1) C++/CLI (1) November 2007 (1) Debugging (1) Code Analysis Rules (1) Visual Studio Orcas (1) SilverLight (1) New Forums (1) Small Business Server 2003 R2 (1) Team Foundation Server (1) January 2007 (1) Visual Studio 2005 Service Pack 1 Beta (1) MFC (1) Humourous (1) Visual Studio 2011 (1) Windows 8 (1) August 2011 (1) July 2011 (1) June 2011 (1) RabbitMQ (1) Opinion (1) Software (1) Usability (1) April 2011 (1) February 2011 (1) Unity 2.0 (1) Book Review (1) August 2010 (1) Refactoring (1) Refactoring with Visual Studio 2010 (1) March 2010 (1) DevTeach YYZ 2010 Toronto (1) December 2009 (1) August 2009 (1) May 2009 (1) Microsoft Patterns and Practices (1)