无法将库从 Node_Modules 导入到 ASP.NET CORE APP

Cannot import libraries from Node_Modules to ASP.NET CORE APP

我正在学习 Scott Allen - ASP.Net Pluralsight 的核心基础课程,并尝试将 Node_Modules 的外部库添加到我的项目中。

项目结构如下:

以及我如何将数据表库包含到我的项目中(添加到 Pages/Shared/_Layout.cshtml)

但是当应用程序是运行时,它找不到这些库:

问题:

  1. 这种方式有什么问题吗?
  2. 你们能推荐一些将外部库导入 ASP.NET CORE 应用程序的有效方法吗?

我正在使用 .NET 5

<PropertyGroup>
   <TargetFramework>net5.0</TargetFramework>
</PropertyGroup>

请注意,我们默认存放静态文件的目录是{content root}/wwwroot,您可以将这些datatables插件相关的js&css文件移动到网站根目录。

有关在 ASP.NET Core 中提供静态文件的更多信息,请查看此文档:

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/static-files?view=aspnetcore-5.0

根据韩非提供的文档,我解决了我的问题。我需要添加一些配置以将“node_modules”作为 PhysicalFileProvider 包含在 Startup.cs 文件中,如下所示:

然后更新 script/link 标签中的 srchref 属性:

<script src="~/StaticFiles/datatables.net/js/jquery.dataTables.js"></script>
<link href="~/StaticFiles/datatables.net-bs4/css/dataTables.bootstrap4.css" rel="stylesheet"/>