Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Троелсен Эндрю, "Язык программирования C#9 и платформа .NET5" бесплатно, без регистрации.
options => options.UseSqlServer(connectionString,
sqlOptions => sqlOptions.EnableRetryOnFailure()));
services.AddScoped<ICarRepo, CarRepo>();
services.AddScoped<ICreditRiskRepo, CreditRiskRepo>();
services.AddScoped<ICustomerRepo, CustomerRepo>();
services.AddScoped<IMakeRepo, MakeRepo>();
services.AddScoped<IOrderRepo, OrderRepo>();
На заметку! Веб-приложение MVC будет работать как с уровнем доступа к данным, так и с API-интерфейсом для взаимодействия с данными, чтобы продемонстрировать оба механизма.
Добавление строки подключения к настройкам приложения
Модифицируйте файл
appsettings.development.json
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"ConnectionStrings": {
"AutoLot": "Server=.,5433;Database=AutoLotFinal;
User ID=sa;Password=P@ssw0rd;"
}
}
Метод Configure()
Метод
Configure()
ConfigureServices()
Configure()
AutoLot.Api
Внутри стандартного шаблона выполняется проверка среды, и если она установлена в
Development
UseDeveloperExceptionPage()
UseHttpsRedirection()
арр.UseRouting()
арр.UseAuthorization()
арр.UseEndpoints()
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
// Если среда разработки, тогда отображать отладочную информацию.
app.UseDeveloperExceptionPage();
// Первоначальный код.
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json",
"AutoLot.Api v1"));
}
// Перенаправить трафик HTTP на HTTPS.
app.UseHttpsRedirection();
// Включить маршрутизацию.
app.UseRouting();
// Включить проверки авторизации.
app.UseAuthorization();
// Включить маршрутизацию с использованием конечных точек.
// Использовать для контроллеров маршрутизацию с помощью атрибутов.
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
Кроме того, когда приложение запускается в среде разработки, необходимо инициализировать базу данных. Добавьте в метод
Configure()
ApplicationDbContext
InitializeData()
AutoLot.Dal
Ниже показан модифицированный код:
public void Configure(
IApplicationBuilder app,
IWebHostEnvironment env,
<b> ApplicationDbContext context)</b>
{
if (env.IsDevelopment())
{
// Если среда разработки, тогда отображать отладочную информацию.
app.UseDeveloperExceptionPage();
<b> // Инициализировать базу данных.</b>
<b> if (Configuration.GetValue<bool>("RebuildDataBase"))</b>
<b> {</b>
<b> SampleDataInitializer.InitializeData(context);</b>
<b> }</b>
}
...
}
Обновите файл
appsettings.development.json
RebuildDataBase
false
{
"Logging": {
"LogLevel": {