ASP.NET Core исключение (тот же ключ уже был добавлен) при работе под Linux - PullRequest
0 голосов
/ 16 мая 2018

У меня есть проект ASP.NET Core API. Ранее я смог успешно запустить его в Linux (Ubuntu):

sudo dotnet Project.dll

Я также смог запустить его под Windows

Теперь что-то странное изменилось, наверное, и когда я запускаю команду:

sudo dotnet Project.dll

Я получаю исключение:

Unhandled Exception: System.ArgumentException: An item with the same key has already been added. Key: environment
   at System.ThrowHelper.ThrowAddingDuplicateWithKeyArgumentException(Object key)
   at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at Microsoft.Extensions.Configuration.Memory.MemoryConfigurationProvider..ctor(MemoryConfigurationSource source)
   at Microsoft.Extensions.Configuration.Memory.MemoryConfigurationSource.Build(IConfigurationBuilder builder)
   at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()
   at Microsoft.AspNetCore.Hosting.WebHostBuilder.BuildCommonServices(AggregateException& hostingStartupErrors)
   at Microsoft.AspNetCore.Hosting.WebHostBuilder.Build()

А затем он указывает на линию

var host = new WebHostBuilder() 

в моем Program.cs файле, вот оно:

public static void Main(string[] args)
{
    var config = new ConfigurationBuilder()
                    .SetBasePath(Directory.GetCurrentDirectory())
                    .AddJsonFile("host.json", optional: true)
                    .AddJsonFile("appsettings.json", optional: true)
                    .Build();

    var host = new WebHostBuilder()
        .UseKestrel()
        .UseConfiguration(config)
        .UseContentRoot(Directory.GetCurrentDirectory())
        .UseIISIntegration()
        .UseStartup<Startup>()
        .Build();

    host.Run();
}

Я уже откатил Startup.cs до того момента, когда он успешно работал, но все еще получаю это исключение. В то же время у меня нет проблем с запуском этого кода под Windows. Пожалуйста, сообщите.

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