У меня есть веб-сайт MVC, использующий Web Core API.После внесения небольших изменений и развертывания я неожиданно получил ошибку;Код состояния ответа не указывает на успех: 500 (Внутренняя ошибка сервера).Поэтому я включил файл журнала для API Web Core (см. https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/troubleshoot?view=aspnetcore-2.0#aspnet-core-module-stdout-log) и получаю это сообщение об ошибке;
Исключение при запуске приложения: System.Collections.Generic.KeyNotFoundException: данный ключотсутствовал в словаре в System.Collections.Generic.Dictionary2.get_Item (ключ TKey) в Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider.CandidateResolver.ComputeClassification (зависимость от строки) в Microsoft.AspNetCore.MisseserP.CandidateResolver.ComputeClassification (Строковая зависимость) в Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider.CandidateResolver.ComputeClassification (Строковая зависимость) в Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartMol.d__172.MoveNext () в System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext () в Microsoft.Extensions.DependencyInjection.MvcCoreServiceCollectionExtensions.GetApplicationPartManager (IServiceCollection services) в Microsoft.Extensions.DependencyInjection.MvcCoreServiceCollectionExtensions.AddMvcCore (IServiceCollection services) в Properties.API.Startup.ConfigureServices (IServiceCollection services) --- место, в котором ранее находился исключительный стекв System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () в Microsoft.AspNetCore.Hosting.ConventionBasedStartup.ConfigureServices (IServiceCollection services) в Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureApplicationServices () в Microsoft (на) Microsoft.BuildApplication () Хостинговая среда: корневой путь промежуточного содержимого: C: \ inetpub \ wwwroot \ SIR Сейчас прослушивает: http://localhost:33007 Приложение запущено.Нажмите Ctrl + C, чтобы выключить.
ОБНОВЛЕНИЕ: линия, где он падает, является;
services.AddMvcCore (). AddJsonFormatters ();
в ConfigureServices.
Как мне отладить это, чтобы выяснить, что вызывает это?
public class Startup {
public Startup(IHostingEnvironment env) {
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appSettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($ "appSettings.{env.EnvironmentName}.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
.
.
.
public void ConfigureServices(IServiceCollection services)
{
services.AddCors();
services.AddMvcCore().AddJsonFormatters();
services.Configure<IISOptions>(options => new IISOptions
{
AutomaticAuthentication = true,
ForwardClientCertificate = false,
ForwardWindowsAuthentication = false
});
var connectionStringMSurveyV2 = Configuration.GetConnectionString("MSurveyV2Db");
services.AddScoped<MSurveyV2Db>(_ => new MSurveyV2Db(connectionStringMSurveyV2));
var connectionStringSir = Configuration.GetConnectionString("SirDb");
services.AddScoped<SirDb>(_ => new SirDb(connectionStringSir));
services.AddScoped<IPropertiesRepo, PropertiesRepo>();
services.AddScoped<ISirUoW, SirUoW>();
services.AddScoped<IPropertyUoW, PropertyUoW>();
services.AddScoped<Services.IMailService, Services.MailService>();
}
.,,