Razor Core 安装 jquery.unobtrusive.ajax 缺少 js 文件

DFE*_*ENS 3 c# razor nuget .net-core

我知道我一定遗漏了一些非常明显的东西,但是 js 文件在哪里?我通过 nuget 安装包,但是当我检查 js 文件以将它们包含在我的页面中时,我在任何地方都找不到它们。

我该怎么办?

ziv*_*kan 5

多年来,虽然 NuGet 已经失宠,但获得 Web 前端资源(html、css、js)。我预计这主要是由于缺乏灵活性(使用包的开发人员无法决定文件的去向,包作者可以)。我感觉到大量 ASP.NET 开发人员转向使用非 .NET 开发人员用于这些文件的相同工具,主要是 npm。默认情况下,您可以通过 ASP.NET Core 的 angular 和 react 模板使用 npm 看到这一点。webapp 和 mvc 模板现在只在他们的模板中提供一些版本的引导程序和 jquery,没有工具支持来更新它们,只是一个评论说:

/* 请参阅https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification 上的文档,了解有关配置此项目以捆绑和缩小静态 Web 资产的详细信息。*/

由于使用 npm 的生态系统很重要(不是说它很难,只是很重要),因此 ASP.NET 团队创建了一个名为LibMan的简单库管理器。

所以,我建议要么使用 LibMan 来获取 jquery 和任何其他你想要的前端资源,要么尽可能深入 npm/webpack 兔子洞,你可以根据自己的喜好让它变得简单或复杂你想要什么功能。或者只是从 jquery 的网站下载文件并将其复制到您的存储库中。

NuGet 包不适合您的原因是该包仅包含一个content文件夹,但 NuGet 的有关从 packages.config 迁移到 packagereference的文档特别指出“内容”资产不再可用。包作者可以使用contentFilesPackageReference 使他们的包与项目兼容,但包消费者对此无能为力。