Extension de la méthode doit être définie dans un non-générique statique de la classe

J'ai écrit le code suivant à savoir le manque de séquence, mais j'obtiens l'erreur comme je l'ai dit c'est mon code

public partial class Missing : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
    List<int> daysOfMonth =
       new List<int>() { 6, 2, 4, 1, 9, 7, 3, 10, 15, 19, 11, 18, 13, 22, 24, 20, 27, 31, 25, 28 };
    Response.Write("List of days:");
    foreach (var num in daysOfMonth)
    {
        Response.Write(num);
    }
    Response.Write("\n\nMissing days are: ");
    //Calling the Extension Method in the List of type int 
    foreach (var number in daysOfMonth.FindMissing()){Response.Write(number);}
}
public static IEnumerable<int> FindMissing(this List<int> list)
{
    //Sorting the list
    list.Sort();
    //First number of the list
    var firstNumber = list.First();
    //Last number of the list
    var lastNumber = list.Last();
    //Range that contains all numbers in the interval
    //[ firstNumber, lastNumber ]
    var range = Enumerable.Range(firstNumber, lastNumber - firstNumber);
    //Getting the set difference
    var missingNumbers = range.Except(list);
    return missingNumbers;
}

}

J'obtiens l'erreur suivante Extension method must be defined in a non-generic static class quelqu'un peut-il m'aider

OriginalL'auteur Chaitanya | 2012-02-11