Startup.cs против Program.cs в ASP.NET Core 2 - PullRequest
0 голосов
/ 21 февраля 2019

Я просмотрел документацию на веб-сайте Microsoft, и есть два места, где мы можем настроить наши конфигурации.

Мы можем сделать это либо в Startup.cs или Program.cs.Однако Program.cs имеет те же методы, которые доступны в Startup.cs

public class Program
{
    public static void Main(string[] args)
    {
        BuildWebHost(args).Run();
    }

    public static IWebHost BuildWebHost(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .UseStartup<Startup>()
            .ConfigureServices(services =>
            {
                //same as ConfigureServices method in Startup.cs
                services.AddAutofac();
            })
            .Configure(app =>
            {
                //same as Configure method in Startup.cs
                app.UseMvc();
            })
            .Build();
}

. Единственная причина существования класса Startup.cs - это перемещение некоторых конфигураций из Program.cs?Можем ли мы вообще удалить этот класс и сохранить всю конфигурацию в Program.cs?

С уважением

1 Ответ

0 голосов
/ 21 февраля 2019

Можем ли мы полностью удалить этот класс и сохранить всю конфигурацию в Program.cs?

Да

Документация объясняет

Удобные методы

Чтобы настроить службы и конвейер обработки запросов без использования класса Startup, вызовите ConfigureServices и Configure вспомогательные методы на хосте застройщика.Несколько вызовов ConfigureServices добавляются друг к другу.Если существует несколько вызовов метода Configure, используется последний вызов Configure.

Это больше о настройке компоновщика, чем фактический Program.cs .Это просто шаблонный класс по умолчанию, используемый для хранения основной записи в приложении.

Ссылка Запуск приложения в ASP.NET Core

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...