"Default": "Information",

      "Microsoft": "Warning",

      "Microsoft.Hosting.Lifetime": "Information"

    }

  },

  "RebuildDataBase": false,

  "ConnectionStrings": {

    "AutoLot": "Server=db;Database=AutoLotPresentation;

    User ID=sa;Password=P@ssw0rd;"

  }

}

Стандартный шаблон настраивает в методе UseEndpoints маршрутизацию на основе соглашений. Ее понадобится отключить и повсюду в приложении применять маршрутизацию с помощью атрибутов. Закомментируйте (или удалите) вызов MapControllerRoute и замените его вызовом MapControllers:

app.UseEndpoints(endpoints =>

{

  endpoints.MapControllers;

});

Далее добавьте атрибуты маршрутов к HomeController в приложении AutoLot.Mvc. Первым делом добавьте шаблон контроллер/действие к самому контроллеру:

[Route("[controller]/[action]")]

public class HomeController : Controller

{

  ...

}

Затем добавьте три маршрута к методу Index, так что он будет стандартным действием, когда не указано действие либо когда не указан контроллер или действие. Кроме того, снабдите метод атрибутом HttpGet, чтобы явно объявить его действием GET:

[Route("/")]

[Route("/[controller]")]

[Route("/[controller]/[action]")]

[HttpGet]

public IActionResult Index

{

  return View;

}

<p id="AutBody_Root1397"><strong>Ведение журнала</strong></p>

Базовая инфраструктура ведения журнала добавляется в контейнер DI как часть процесса запуска и конфигурирования. Инфраструктура ведения журнала использует довольно простой интерфейс ILogger. Основополагающим компонентом ведения журнала является класс LoggerExtensions, определения методов которого показаны ниже:

public static class LoggerExtensions

{

  public static void LogDebug(this ILogger logger, EventId eventId,

    Exception exception, string message, params object[] args)

  public static void LogDebug(this ILogger logger, EventId eventId,

    string message, params object[] args)

  public static void LogDebug(this ILogger logger, Exception exception,

    string message, params object[] args)

  public static void LogDebug(this ILogger logger,

    string message, params object[] args)

  public static void LogTrace(this ILogger logger, EventId eventId,

    Exception exception, string message, params object[] args)

  public static void LogTrace(this ILogger logger, EventId eventId,

    string message, params object[] args)

  public static void LogTrace(this ILogger logger, Exception exception,

    string message, params object[] args)

  public static void LogTrace(this ILogger logger,

    string message, params object[] args)

    Exception exception, string message, params object[] args)

  public static void LogInformation(this ILogger logger, EventId eventId,

    string message, params object[] args)

  public static void LogInformation(this ILogger logger, Exception exception,

    string message, params object[] args)

  public static void LogInformation(this ILogger logger,

    string message, params object[] args)

  public static void LogWarning(this ILogger logger, EventId eventId,

    Exception exception, string message, params object[] args)

  public static void LogWarning(this ILogger logger, EventId eventId,

    string message, params object[] args)

Перейти на страницу:

Похожие книги