Home » c# » Using Directives Sorted in Wrong Order

Using Directives Sorted in Wrong Order

Posted by: admin November 30, 2017 Leave a comment

Questions:

I’m using the Power Commands extension with Visual Studio 2012. I have the option checked to remove and sort usings on save. The problem is that the System.Xxx directives are being sorted last, and that’s causing a style analysis error:

SA1208: System using directives must be placed before all other using directives.

Before save:

using System;
using System.Diagnostics.CodeAnalysis;
using Foo;

After save:

using Foo;
using System;
using System.Diagnostics.CodeAnalysis;

This worked correctly (System.Xxx first) with VS 2010. Anyone know how to correct this?

Note: Even if it didn’t cause an SA error, I’d still prefer the system directives to be first.

Answers:

Goto the “Quick Launch” (Ctrl+Q) and type “using” and press Enter.

Then change the following setting:

Using Sorting option

It’s an annoying default setting, I have no idea why Microsoft chose that, it goes against all previous standards that I’ve ever seen.

EDIT:
Thanks to Oskar we have a reason:

The reason for the change in default behavior is due to the fact that
Windows App Store applications prefer to have ‘Windows.‘ at the top
of the file rather than ‘System.