不允许子操作执行重定向操作。 (使用部分视图)

2024-03-14

我正在尝试使用数据库中的一些数据加载部分视图,但在运行应用程序时遇到以下问题:

不允许子操作执行重定向操作。

我不知道为什么会发生这种情况,因为我对 MVC 技术还很陌生。

这是我的PartialViewResult控制器中的方法:

public PartialViewResult UnReadEmails()
{
   if (User.Id != null)
   {
      List<Emails> resultList = EmailController.GetUnreadEmailsByUserId(User.Id);
       return PartialView("~/Views/Emails/_UnReadEmails.cshtml", resultList);
   }
   return PartialView("Error, not found!");
}

这是我的partialview本身,它被称为_UnReadEmails(正如你所看到的,我在这里显示有关发件人和电子邮件正文的信息),PartialView正在检索我从控制器发送到的电子邮件列表

@model IEnumerable<Emails>

foreach (var item in Model)
{
    <li>
        <a>
            <span>
               <span>@item.EmailSender</span>
               <span class="email">
                     @item.Body;
               </span>
        </a>
    </li>
}

在我尝试以这种方式加载我的部分视图之后:

@Html.Action("UnreadEmails", "Message")

我开始收到我在标题中提到的以下问题,

我已经尝试了一些方法来解决这个问题,比如改变@Html.Action("UnreadEmails", "Message") to @Url.Action("UnreadEmails", "Message")等等,但这并没有解决我的问题。

编辑:它总是在这一行中断(在视图中):

@Html.Action("UnreadEmails", "Message")

It never goes into code behind.. enter image description here

在克里斯的建议之后我添加了[AllowAnonymous]在该方法的顶部:

[AllowAnonymous]
public PartialViewResult UnReadEmails()
{
   if (User.Id != null)
   {
      List<Emails> resultList = EmailController.GetUnreadEmailsByUserId(User.Id);
       return PartialView("~/Views/Emails/_UnReadEmails.cshtml", resultList);
   }
   return PartialView("Error, not found!");
}

编辑编辑编辑:

有趣的事实是,无论我在控制器的方法中编写什么,即使我注释了所有代码,它仍然会在视图上中断,这意味着它永远不会进入控制器的方法。我在 UnReadEmails 方法的开头放置了断点,但它从未被击中,它总是在视图上中断!


这个错误非常明显。子操作不能发出重定向。这是因为,当孩子行动时look与常规操作一样,它们实际上是在单独的进程中呈现的,并且无法修改实际响应(重定向需要这样做)。

在实际的子操作代码中,您不会返回重定向,因此这意味着您必须将操作过滤器应用于发出重定向的子操作。特别是,您应该避免使用诸如Authorize or RequireHttps在子操作上,因为它们通过使用重定向来工作,而子操作又无法做到这一点。如果子操作位于用以下修饰的控制器中Authorize,它应该标记为AllowAnonymous.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不允许子操作执行重定向操作。 (使用部分视图) 的相关文章

  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 在一个数据访问层中处理多个连接字符串

    我有一个有趣的困境 我目前有一个数据访问层 它必须与多个域一起使用 并且每个域都有多个数据库存储库 具体取决于所调用的存储过程 目前 我只需使用 SWITCH 语句来确定应用程序正在运行的计算机 并从 Web config 返回适当的连接字
  • std::vector 与 std::stack

    有什么区别std vector and std stack 显然 向量可以删除集合中的项目 尽管比列表慢得多 而堆栈被构建为仅后进先出的集合 然而 堆栈对于最终物品操作是否更快 它是链表还是动态重新分配的数组 我找不到关于堆栈的太多信息 但
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 从经典 ASP 调用 .Net C# DLL 方法

    我正在开发一个经典的 asp 项目 该项目需要将字符串发送到 DLL DLL 会将其序列化并发送到 Zebra 热敏打印机 我已经构建了我的 DLL 并使用它注册了regasm其次是 代码库这使得 IIS 能够识别它 虽然我可以设置我的对象
  • 无限循环与无限递归。两者都是未定义的吗?

    无副作用的无限循环是未定义的行为 看here https coliru stacked crooked com view id 24e0a58778f67cd4举个例子参考参数 https en cppreference com w cpp
  • 人脸 API DetectAsync 错误

    我想创建一个简单的程序来使用 Microsoft Azure Face API 和 Visual Studio 2015 检测人脸 遵循 https social technet microsoft com wiki contents ar
  • 在 Unity 中实现 Fur with Shells 技术

    我正在尝试在 Unity 中实现皮毛贝壳技术 http developer download nvidia com SDK 10 5 direct3d Source Fur doc FurShellsAndFins pdf Fins 技术被
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • 为什么 isnormal() 说一个值是正常的,而实际上不是?

    include
  • 有没有办法让 doxygen 自动处理未记录的 C 代码?

    通常它会忽略未记录的 C 文件 但我想测试 Callgraph 功能 例如 您知道在不更改 C 文件的情况下解决此问题的方法吗 设置变量EXTRACT ALL YES在你的 Doxyfile 中
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 对于某些 PDF 文件,LoadIFilter() 返回 -2147467259

    我正在尝试使用 Adob e IFilter 搜索 PDF 文件 我的代码是用 C 编写的 我使用 p invoke 来获取 IFilter 的实例 DllImport query dll SetLastError true CharSet
  • C++ 中的 include 和 using 命名空间

    用于使用cout 我需要指定两者 include
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前

随机推荐

  • 如何仅使用 Jackson 将 XML 转换为 JSON?

    我从服务器收到 XML 格式的响应 但我需要以 JSON 格式显示它 有没有办法不用第三方API就可以转换呢 我使用了 Jackson 但为此我需要创建 POJO 服务器的响应是这样的
  • 如何获取数组的所有子集?

    给定一个数组 dog cat mouse 最优雅的创建方式是什么 mouse cat cat mouse dog dog mouse dog cat dog cat mouse 我需要它适用于任何大小的数组 这本质上是一个二进制计数器 其中
  • 谷歌索引页面加载后通过ajax或javascript检索的文本

    几个谷歌问题 1 谷歌是否有机会 看到 使用ajax检索的文本 用户从一系列选择框中进行选择 然后显示数据库中的一些文本 2 如果我使用javascript更改页面标题 在HEAD区域之外 谷歌会索引修改后的标题吗 抱歉 如果这些是琐事问题
  • 如何快速隐藏/显示按钮

    我正在尝试使用 if 语句来使按钮在标签显示某种状态时隐藏 并在标签显示其他内容时出现 标签的名称是 Status 当它显示时 Closed 我希望它隐藏 当它显示时 Open 就会出现 var query3 PFQuery classNa
  • 在自定义 JSF 组件收到 AJAX 更新后调用自定义 JavaScript 代码

    我已经实现了自己的 JSF 组件及其渲染器 并且运行良好 目前 在更改组件树中的某些内容后 我开始重新加载 JavaScript 页面 现在我想在 AJAX 调用传递新数据后更新我的组件 这就像我在单击按钮后向表中插入新行 这会启动 AJA
  • PHP 通过类传递对象?

    重建整个类布局后 我在使用多个类实例时仍然遇到问题 class User public variable public function getUser this gt variable It works return bob class
  • Twilio 通话应用账单扣除

    我们正在制作三种方式调用 Android 应用程序 两个参与者是应用程序用户 第三个参与者是使用 TWILIO 的任何电话号码 我们已经实现了通话功能 我们的通话正在接通 但问题是 我们需要在服务器端知道谁是发起呼叫的用户 以便我们可以从该
  • 如何在本地服务器上安装CloudFoundry

    我知道 CF 是为在多个云服务上运行而设计的 以实现微服务应用程序的统一视图 但是 我想在我的 CentOS 本地服务器上安装并运行 Cloud Foundry 换句话说 我想在一台运行 CF 的服务器上设置我的私有 云 作为基于微服务的应
  • 如何在 tkinter 中滚动到 TreeView 的底部

    我在 Tkinter 中使用树视图模仿了一个表格小部件 并添加一个链接到它的滚动条 问题是因为我的数据是按分钟自动添加到底部的 并且我希望滚动始终滚动到底部 我知道 text see END 在文本小部件中完美工作 但就我而言 树视图小部件
  • Java NoSuchAlgorithmException - SunJSSE、sun.security.ssl.SSLContextImpl$DefaultSSLContext

    背景 我一直在它自己的 Eclipse 项目中使用 Authorize net SDK 一切都运转良好 然后我需要将其添加到我的主项目中 我将依赖项添加到类路径中 并将其复制到我需要的代码块中 它应该有效 Problem 长话短说 代码在我
  • 表单验证失败后重新填充 Codeigniter 中的复选框

    在表单验证不成功将用户返回到同一表单后 我在重新填充一组复选框时遇到问题 下拉菜单和文本输入可以重新填充 但复选框不能 这是复选框的代码片段 td Casual br Romantic br td
  • 如何获取 Xamarin.Forms 中嵌入文件的 URL/路径

    我无法访问 Xamarin Forms 项目中嵌入的 mp4 文件 根据Xamarin Forms 中的文件处理 https learn microsoft com en us xamarin xamarin forms app funda
  • SassError:找不到要导入的样式表。 @use '~@angular/material' 作为垫子;

    我使用 CLI 创建了一个 Angular 项目 我正在使用 SCSS 并且我将 Angular Material 包含在自定义主题 iirc 中 我添加了几个虚拟组件 应用程序仍然构建得很好 然后我需要使用 Angular Materia
  • Swift 3 类型“Any”没有下标成员

    我刚刚将我的项目转换为 Swift 3 我这里有这行代码 let type self data indexPath row Type as String 但现在我得到这个错误 Type Any has no subscript member
  • 不允许使用非成员函数重载 C++ 转换运算符的理由是什么

    C 0x 添加了显式转换运算符 但它们必须始终定义为 Source 类的成员 这同样适用于赋值运算符 它必须在 Target 类上定义 当所需转换的 Source 和 Target 类彼此独立时 Source 都不能定义转换运算符 Targ
  • 如何通过IP地址列出网络计算机上所有已安装的软件?

    我想知道如何获取网络计算机上安装的软件列表 我能够获取本地计算机上安装的软件列表 但不确定如何提取网络内计算机上已安装软件的详细信息 我使用服务器名称或网络计算机的 IP 地址作为唯一的输入 下面是从本地计算机获取已安装软件的详细信息的代码
  • 在 Swift 中比较 UIColors 时出现问题

    我需要比较两个 UIColor 但由于某种原因它总是返回 false 我尝试比较使用 and isEqual 但它们似乎都不起作用 This is a sample of the colors I have created let blue
  • Google 地图 + jQuery:渲染错误

    将 google 地图放入 jquery ui 选项卡中时 地图在某些情况下无法正确显示 重现 Go here http www fiveminuteargument com html map test html 单击 列表 链接 调整浏览
  • 使用 save() 玩框架 JPA 问题

    我试图在数据库中保存一个简单的对象 但这给我带来了问题 这是我的对象类 Entity Table name lines public class Line extends GenericModel Id Column name line i
  • 不允许子操作执行重定向操作。 (使用部分视图)

    我正在尝试使用数据库中的一些数据加载部分视图 但在运行应用程序时遇到以下问题 不允许子操作执行重定向操作 我不知道为什么会发生这种情况 因为我对 MVC 技术还很陌生 这是我的PartialViewResult控制器中的方法 public