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

标签 c# razor .net-core nuget

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

我该怎么办?

最佳答案

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

/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification for details on configuring this project to bundle and minify static web assets. */

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

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

NuGet 包对您不起作用的原因是因为该包仅包含一个content 文件夹,但 NuGet 的文档位于 migrating from packages.config to packagereference特别指出"content" assets are no longer available .包作者可以使用 contentFiles使他们的包与使用 PackageReference 的项目兼容,但包消费者对此无能为力。

关于c# - Razor Core 安装 jquery.unobtrusive.ajax 缺少 js 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57012147/

相关文章:

c# - 将 C# 方法转换为使用引用内部属性的泛型

c# - 使用 RabbitMQ 的 MassTransit - RecieveFrom 的地址

c# - 使用 razor @Html.textboxfor 将字符串表示为货币或小数

linux - WPF 应用程序可以在带有 .Net Core 3 的 Linux 或 Mac 中运行吗?

c# - AWS LAMBDA 使用 SqlConnection 连接到 RDS SQL 数据库

javascript - 无效日期 : Converting UTC to local

c# - WPF 代码隐藏所需的命名空间

c# - 使用 Razor 或标签生成器在 Html Helper 中构建 Html?

c# - 部分 View 不工作的 MVC3 Ajax 表单验证

asp.net-core - .NET Core 上的 X509Certificate2.CreateFromCertFile()