Когда я добавляю конфигурацию, например:
services.Configure<JiraOptions>(Configuration.GetSection("Jira"));
Моя IDE выделяет ошибку в IConfiguration:
Неоднозначная ссылка: AutoMapper.Configuration.IConfiguration Microsoft.Extensions.Configuration .IConfiguration match
Когда я пытаюсь вызвать метод GetSection, он пишет ошибку:
Неоднозначный вызов: Microsoft.Extensions.DependencyInjection.IServiceCollection Configure (this Microsoft.Extensions.DependencyInjection.IServiceCollection, Microsoft.Extensions.Configuration.IConfiguration) (в классе OptionsConfigurationServiceCollectionExtensions) Microsoft.Extensions.DependencyInjection.IServiceCollection Настроить (это Microsoft.Extensions.DependencyInjection.IServiceCollection, System.ActionAction ) (в классе OptionsServiceCollectionExtensions) совпадение
Как это исправить? Полный код и экран:
using System.Reflection;
using System.Threading.Tasks;
using AutoMapper;
using AutoMapper.Configuration;
using Grafana.Data;
using Grafana.Data.Interfaces;
using Grafana.Domain;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
services.AddAutoMapper(Assembly.GetExecutingAssembly());
services.AddMvc();
services.AddControllers();
services.AddTransient<IJiraClient, JiraClient>();
services.AddTransient<IBugsMonitoringService, BugsMonitoringService>();
services.Configure<JiraOptions>(Configuration.GetSection("Jira"));
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseRouting();
app.UseEndpoints(endpoints => { endpoints.MapControllers(); });
}
}
Варианты:
public class JiraOptions
{
public string Url { get; set; }
public string Login { get; set; }
public string Password { get; set; }
}