Почему бы не разрешить определение метода Extension во вложенном классе? [закрыто]

Я бы посчитал удобным / логичным написать свои расширения для класса во вложенном классе. Основная причина в том, что я мог бы просто назвать этот классExtensions и позвольте его внешней области именования дать ему уникальное имя типа для компилятора.

Какова техническая причина, чтобы запретить что-то вроде:

public class Foo
{
   ObjectSet<Bar> Bars { get; set; }

   public static class Extensions
   {
      public static Bar ByName(this ObjectSet<Bar> bars, string name)
      {
         return bars.FirstOrDefault(c => c.Name == name);
      }
   }
}

Принимая во внимание, что теперь я должен создать отдельный свободный класс.

Update/Note: Я не предполагал, что тот факт, что это был внутренний класс, повлияет на доступность метода расширения. Я только хотел обратиться к практической проблеме кодирования отдельным классом с отдельным именем.

Ответы на вопрос(3)

Ваш ответ на вопрос