我在使用我创建的Facebook和MS外部登录的ASP.Net Core(4.6.1框架)中有一个Web与Visual Studio 2015并在昨天推出的新的Visual Studio 2017中打开。 VS2017做了一些与csproj,project.json等文件相关的更改。无法加载ASP.Net上的文件或程序集System.Diagnostics.DiagnosticSource从VS2015到VS2017的核心迁移
该网站编译和执行良好,除了一部分。如果我做了一个Facebook或微软外部登录,该网站显示的这个陷阱:
FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
System.Net.Http.WinHttpHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
AggregateException: Unhandled remote failure.
Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler+<HandleRemoteCallbackAsync>d__6.MoveNext()
在浏览器的URL表明,它试图从外部登录返回到本地(https://localhost:44321/signin-facebook?code= ...或/登入-微软)。
System.Diagnostics.DiagnosticSource.dll(和System.Net.Http.dll)的版本号是4.6.24705.1。
我从头开始了一个新的VS2017项目,添加了Facebook和MS登录,它工作正常 - 让我登录没有陷阱。该DLL是相同的版本。
两个相比较的csproj文件显示(与系统DLL没有)的差异,但没有明显的:
你能分享一下项目文件中的差异吗?有可能某些东西会传递地引用这个程序集。 – mlorbetske
添加了csproj diffs的屏幕截图。 – GarDavis