Поиск

Несколько методов Main

В С# разработчиками включен механизм, позволяющий определять более одного класса с методом Main. Зачем это нужно? Одна из причин — необходимость поместить в ваши классы тестовый код. Затем, используя переключатель /юа/п:<имя_Класса> компилятора С#, можно задавать класс, метод Main которого должен быть задействован. Вот пример, в котором я создал два класса, содержащих методы Main'.

using System;
class Mainl {
public static void Main() {
Console.WriteLine("Main1"); } }
class Main2
{
public static void MainQ
{
Console.WriteLine("Main2");
} }

Чтобы скомпилировать это приложение так, что в качестве точки входа в приложение применялся бы метод Mainl.Main, нужно использовать этот переключатель:

esc MultipleMain.es /main:Mainl

При изменении переключателя на /main:Main2 будет использован метод Main2.Main.

Следует соблюдать осторожность и задавать в указанном в переключателе имени класса верный регистр символов, так как С# чувствителен к регистру. Кроме того, попытка компиляции приложения, состоящего из нескольких классов с определенными методами Main, без указания переключателя /main вызывает ошибку компилятора.