【发布时间】:2019-01-05 14:39:07
【问题描述】:
我在离开一个项目很长时间(可能超过一年)后才回到一个项目,并且在将 VS2017 更新到版本 15.7.5 后,我在尝试重建项目时遇到了许多问题。第一个问题是 nuget 依赖项抱怨 OpenIddict 程序集“1.0.0.-*”被请求但收到“1.0.0-rtm-1063”。这些错误对我来说毫无意义,但我修改了我的 .csproj 文件,如下所示:
<!-- OpenIdDict -->
<!-- 1.0.0.-* changed to 1.0.0.-rtm-1063 -->
<PackageReference Include="AspNet.Security.OAuth.Validation" Version="1.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="1.1.1" />
<PackageReference Include="OpenIddict" Version="1.0.0-rtm-1063" />
<PackageReference Include="OpenIddict.EntityFrameworkCore" Version="1.0.0-rtm-1063" />
<PackageReference Include="OpenIddict.Mvc" Version="1.0.0-rtm-1063" />
这显然不是一个好的永久解决方案(什么是正确的解决方案?)加上这导致了一系列其他问题,这些问题通过替换解决了
using OpenIddict.Models;
与
using OpenIddict.EntityFrameworkCore.Models;
这给我留下了两个我找不到解决方案的问题。
services.AddOpenIddict().AddEntityFrameworkCoreStores<ApplicationDbContext>()
未定义。
在 Configure() 方法中调用 app.UseOpenIddict();抱怨 UseOpenIddict 未定义。
如果有人能为这些问题指出正确的方向,我将不胜感激。
此外,这个项目使用的是 .NET Core 1.1,据我了解,它已被 .NET Core 2.1 取代。我不清楚如何升级项目以使用 .NET Core 2.1。 VS2017 GUI 中的下拉菜单仅包含 1.0 和 1.1 以及“安装其他框架...”但即使安装了最新的 2.1 SDK 和运行时,.NET Core 2.1 的下拉菜单中仍然没有选项。我做错了什么?
【问题讨论】:
-
查看 VS2017 中的 .Net 核心:stackoverflow.com/questions/48384288/…
-
可以在此处找到 ASP.NET Core 1.x 的 OpenIddict 示例:github.com/openiddict/openiddict-core/tree/release/samples。 2.x 的示例位于
dev分支中:github.com/openiddict/openiddict-core/tree/dev/samples
标签: c# .net-core openiddict