Extension method must be defined in a top level static class

CodeRush shows the Extension method must be defined in a top level static class code issue if an extension method is defined in a nested class.

Fix

Make the class top level or declare the method in another top level static class.

Purpose

Highlights the extension method declaration statements, which would cause the Extension method must be defined in a top level static class compilation error.

Example

public static class MyClass
{
    public static class NestedClass
    {
        public static int <:caret:>Total(this int[] intArray)
        {
            int result = 0;
            foreach (int item in intArray)
                result += item;
            return result;
        }   
    }
}

Fix:

public static class MyClass
{
    public static int Total(this int[] intArray)
    {
        int result = 0;
        foreach (int item in intArray)
            result += item;
        return result;
    }   
    public static class NestedClass
    {

    }
}