启动 ConfigureServices AddMvc()

从 30.05.2018 开始,我在 Startup.cs 中的 ASP.NET Core 代码

public IServiceProvider ConfigureServices(IServiceCollection services){
   // Add services to the collection.
   services.AddMvc();}

抛出异常如下:

启动应用程序时发生错误。KeyNotFoundException: 字典中不存在给定的键。

KeyNotFoundException: 字典中不存在给定的键。System.Collections.Generic.Dictionary.get_Item(TKey 键) Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider+CandidateResolver.ComputeClassification(string 依赖) Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider+CandidateResolver.ComputeClassification(stringNetCore 依赖) Microsoft.Asp .Mvc.Internal.DefaultAssemblyPartDiscoveryProvider+CandidateResolver.ComputeClassification(字符串依赖) Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider+CandidateResolver.ComputeClassification(字符串依赖) Microsoft.AspNetCore.Mvc.Internal.DefaultAssemblyPartDiscoveryProvider+Candidate System.MoNext+(字符串依赖) Linq.Enumerable+d__17.MoveNext() System.Linq。

项目

<TargetFramework>net461</TargetFramework>


<ItemGroup>

<PackageReference Include="Autofac" Version="4.6.2" />

<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="4.1.0" />

<PackageReference Include="EntityFramework" Version="6.2.0" />

<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.1" />

<PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" />

<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="1.1.2" />

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" />

<PackageReference Include="Microsoft.AspNetCore.SignalR.Server" Version="0.2.0-preview2-22683" />

<PackageReference Include="Microsoft.AspNetCore.WebSockets" Version="1.0.2" />

<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" />

<PackageReference Include="Microsoft.IdentityModel.Tokens" Version="5.1.5" />

<PackageReference Include="Microsoft.VisualStudio.SlowCheetah" Version="3.0.61" />

<PackageReference Include="NLog.Web.AspNetCore" Version="4.4.1" />



手掌心
浏览 382回答 3
3回答

明月笑刀无情

从几天前开始,我们也面临着同样的问题。我们还注意到我们和您都在使用 AspNetCore 1.1(一个相当老的版本)。凭直觉,我们更新到最新的 (2.1) 并解决了我们的问题。

素胚勾勒不出你

我们也面临着完全相同的问题。这是我们将问题隔离到的程度: 1. 重建旧版本的代码会导致构建工件中的 XXXXX.deps.json 发生更改。&nbsp;"compilationOptions": {"defines": [&nbsp; "TRACE",&nbsp; "DEBUG",&nbsp; "NET461"],成为"compilationOptions": {"defines": [&nbsp; "TRACE",&nbsp; "DEBUG",&nbsp; "NETFRAMEWORK",&nbsp; "NET461"],和&nbsp; &nbsp; &nbsp; "HealthBizModel/1.0.0": {&nbsp; &nbsp; "runtime": {&nbsp; &nbsp; &nbsp; "HealthBizModel.dll": {}&nbsp; &nbsp; }&nbsp; },&nbsp; "HealthBizService/1.0.0": {&nbsp; &nbsp; "dependencies": {&nbsp; &nbsp; &nbsp; "HealthBizModel": "1.0.0"&nbsp; &nbsp; },成为(依赖项部分是什么打破了它)&nbsp; "HealthBizModel/1.0.0": {&nbsp; &nbsp; "dependencies": {&nbsp; &nbsp; &nbsp; "System.Runtime.Reference1": "4.0.20.0",&nbsp; &nbsp; &nbsp; "System.Net.Primitives.Reference1": "4.0.10.0",&nbsp; &nbsp; &nbsp; "System.Net.Http.WebRequest": "4.0.0.0"&nbsp; &nbsp; },&nbsp; &nbsp; "runtime": {&nbsp; &nbsp; &nbsp; "HealthBizModel.dll": {}&nbsp; &nbsp; }&nbsp; },&nbsp; "HealthBizService/1.0.0": {&nbsp; &nbsp; "dependencies": {&nbsp; &nbsp; &nbsp; "HealthBizModel": "1.0.0",&nbsp; &nbsp; &nbsp; "System.Text.Encoding.Reference1": "4.0.10.0"&nbsp; &nbsp; },有趣的是,我们发现如果我们回滚第二个部分,删除依赖项,Web 应用程序将启动并完全正常运行。所以如果你在紧急情况下进一步的解决尝试: - 从受影响的项目中清除未使用的依赖项(适用于 1 个构建,但奇怪地再次开始失败 - 向代理池添加了一个新的 VS2017 构建代理并用它构建:也没有改变。我们还将尝试更多的想法,例如@Scott Willis 升级到 dotnet core 2.0
打开App,查看更多内容
随时随地看视频慕课网APP