【问题标题】:Making an AJAX request to a controller or page model with Razor Pages使用 Razor 页面向控制器或页面模型发出 AJAX 请求
【发布时间】:2019-05-07 20:21:27
【问题描述】:

随着将 Razor Pages 添加为 .net 核心的选项,我有点困惑。我知道处理程序可用于调用相同 HTTP 类型的多个操作。但是,如果我想创建一个将在多个页面中使用的操作呢?

我假设简单地创建一个没有视图的控制器是执行这些操作的方法。我只是想确保我能够从带有 jQ​​uery AJAX 或常规按钮/锚标记的剃须刀页面调用操作。

我希望两全其美。我应该使用剃须刀页面模板并添加控制器还是使用 mvc 模板并添加页面。还是没关系。

【问题讨论】:

  • 通过 AJAX 调用操作没问题。使用按钮/锚可能是个问题。这取决于您返回的数据。如果您返回 PDF 文件,浏览器会打开它,但如果您返回 View,则会收到错误消息。
  • 这两种方法都有效,这主要是见仁见智,但为此使用 MVC 和 Razor 页面的组合是明智的。
  • 嗨@Blake Rivell,你有没有找到解决方案,因为这是我最近解决的问题?

标签: c# asp.net-core asp.net-core-mvc asp.net-core-2.0 razor-pages


【解决方案1】:

我将 API 控制器用于 AJAX 操作,将 Razor 页面用于基本 GET/POST。如果您想对 Razor 页面(甚至控制器)进行 AJAX 调用,请参阅下面有关将 AntiForgery 令牌添加到调用的帖子。

Example AJAX call back to an ASP.NET Core Razor Page

【讨论】:

    猜你喜欢
    • 2016-03-16
    • 2020-05-04
    • 2012-09-07
    • 2019-08-02
    • 1970-01-01
    • 2020-02-29
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多