使用Dotnet Core 3.0与Entityframework Core 3.0和Identityserver4,您可以拥有一个以Angular为前端和Asp.net Core 3.0为后端的应用程序。请参见此链接:
SPAs的身份验证和授权
首先,您需要从
此处下载Dotnet Core 3.0 SDK。
然后打开命令提示符并使用:
dotnet new angular -o <output_directory_name> -au Individual
这将为您创建项目。
现在在 Visual Studio 中,转到“工具”>“选项”>“环境”>“预览功能”,并勾选:
使用 .NET Core SDK 预览(需要重新启动)
![enter image description here](https://istack.dev59.com/krqfb.webp)
并重新启动 Visual Studio。
之后在项目目录中打开 .csProj 文件并保存。这将要求您保存解决方案文件,该文件刚刚在 Visual Studio 中打开项目时创建。
将 .sln 文件保存在与 .csproj 相同的目录中,然后清理解决方案并重新构建解决方案。
现在,您将拥有使用 Asp.net core 作为后端的 Angular 应用程序,并提供了开箱即用的身份验证和授权功能。
以下是完成所有步骤后应用程序的示例截图。
![enter image description here](https://istack.dev59.com/TXXLI.webp)
在项目目录中,您会有一个app.db文件,在startup.cs的ConfigureServices方法中也会看到这个文件。
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlite(Configuration.GetConnectionString("DefaultConnection")))
该模板默认使用Sqlite,您可以通过安装Microsoft.EntityFrameworkCore.SqlServer NuGet包并在startup.cs文件中更改此设置来将其更改为Sql Server。
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlite(Configuration.GetConnectionString("DefaultConnection")))
to
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")))
并确保您在appsettings.json文件中更新您的连接字符串。
dotnet new angular --auth Individual
在 VS 2017 中可以工作,我只需要将它更新到.Net Core 3.0
,是这样吗? - Len.Net Core 3.0
,但在下载页面上它说支持Visual Studio 2019(v16.3,最新预览版)
。感谢您的建议,但我想使用Visual Studio,因为我需要调试功能。 - Len