问题标签 [tempdata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
310 浏览

asp.net-mvc-2 - 即使会话被禁用,也会调用 SaveTempData

我已经通过 web.config 在我的 mvc2 应用程序中禁用了 sessionState,并且还创建了我自己的 controllerfactory 和虚拟临时数据提供程序,如下所述:

如何在 ASP.NET MVC 中禁用会话状态?

只有我做到了,所以 SaveTempData 抛出异常:

我已确保没有代码使用过 Session 或 TempData 对象,但我仍然看到在引发“OnResultExecuted”事件后引发了此异常。我曾经在我的 mvc1 站点上使用过同样的模式,但从未见过异常。有任何想法吗?

如果我将“SaveTempData”实现更改为:

一切都按预期工作-我只是希望了解为什么在我不在任何地方使用 SaveTempData 时会调用它。

更新

发现这篇文章:http ://www.gregshackles.com/2010/07/asp-net-mvc-do-you-know-where-your-tempdata-is/

这解释了 ExecuteCore 围绕一个操作调用 PossiblyLoadTempData 和 PossiblySaveTempData - 这就是导致我的问题的原因。这是 mvc2 与 mvc1 的新增功能吗?

0 投票
1 回答
5635 浏览

c# - ASP.NET MVC 3 自定义操作过滤器 - 如何将传入模型添加到 TempData?

我正在尝试构建一个自定义操作过滤器,它从过滤器上下文中获取传入模型,将其添加到 tempdata,然后执行“其他操作”。

我的操作方法如下所示:

现在,我想model在模型绑定启动并将表单值集合转换.TempDataMyViewModel

我怎么做?

0 投票
2 回答
589 浏览

asp.net-mvc - MVC 3 CookieTempDataProvider 和 Ninject IOC

我正在尝试在 MVC 3 期货程序集中使用 CookieTempDataProvider。我相信我已经使用 ninject 成功地“连接”了它。以下是我的 app_start.cs 文件中的代码:

[程序集:WebActivator.PreApplicationStartMethod(typeof(Web.AppStart), "Start")] 命名空间 Web { public static class AppStart { public static void RegisterServices(IKernel kernel) {

但是,当我访问使用 TempData 的页面时,我收到此错误,表明它仍在尝试使用 SessionTempDataProvider:

“/”应用程序中的服务器错误。SessionStateTempDataProvider 类需要启用会话状态。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.InvalidOperationException:SessionStateTempDataProvider 类需要启用会话状态。

我一定错过了什么,我无法弄清楚它是什么。非常感激任何的帮助。

非常感谢

0 投票
1 回答
1852 浏览

model-view-controller - 在 ASP.NET MVC 中,为什么 TempData 不会在 Session 存在时持续存在?

我有一个 ASP.NET MVC 项目,它使用 TempData 将对象从一个控制器操作传送到另一个控制器操作 - 这实际上是相同的操作,但是一个接受 HTTP 帖子的版本。

在我的开发机器上,这按预期工作。在测试机器上,第二个控制器操作中的 TempData 值为空。

我看到的论坛帖子建议检查 sessionState 是否正常工作 - 我已经这样做了。两个网站都将 sessionState 设置为 InProc - web.config 都不包含 sessionState 条目,但我检查了 Session.Mode 是 InProc。如果我在第一个控制器操作中将一个对象放入 Session 中,我可以在两台机器上的第二个操作中检索它。

我可以通过在第二个控制器操作中重新执行用于在第一个控制器操作中设置 TempData 的过程来解决此问题,但为什么 TempData 可能会在测试机器上丢失?

0 投票
1 回答
71 浏览

scheduled-tasks - 保存临时数据

有时我们需要在事务中保存一些临时数据。如果没有完成,它将被删除。例如,上传图片。

最好的策略是什么?将数据保存在实际数据库中并执行将删除不完整数据(行)或将其保存在临时空间中的任务调度或什么?

非常感谢 。

0 投票
3 回答
837 浏览

asp.net-mvc - MVC 3 Action 在不同的控制器上,但需要 ViewModel

我正在寻找解决以下问题的最佳方法:我有一个搜索页面,可以选择不同的标准,这些标准在 SearchViewModel 中可用。现在搜索返回一个 SearchResults 列表,它们是产品。这些可以直接添加到篮子中。现在的问题是,将商品添加到购物篮的操作是在 BasketController 而不是 SearchController 上。当用户单击它时,他会返回到 SearchPage,但会丢失他所做的所有选择。

我曾尝试使用 TempData 解决此问题,但我收到“查询的结果不能多​​次枚举。”-异常。

在这里,我在模型中显示我的结果列表,抛出异常:

我还考虑过可能有一种方法可以使用局部视图来做到这一点?当然,我最后的资源只是复制代码,但我对这个想法并不感到兴奋......

任何想法表示赞赏,谢谢=)


编辑控制器的调用是使用如下形式进行的:

0 投票
3 回答
6791 浏览

asp.net-mvc - 将 ModelState 错误复制到 TempData 并在视图中显示它们

我的大多数操作方法在成功时返回 PartialViews,在失败时返回 RedirectToAction 结果。为此,我想将模型状态错误复制到 TempData 中,以便将它们显示给用户。我已经阅读了关于 SO 和一些外部链接的几个问题,但没有一个对我有用......我正在用ModelStateToTempDataMvcContrib 的属性装饰 ActionMethod,然后在视图中显示如下:(这只是一个原型)

我没有显示错误本身,而是不断得到System.Web.Mvc.ValueProviderResult. 我知道这都是错误的,最终我想将模型状态错误过滤到 TempData 中的字典中,但现在我只想让错误字符串显示在视图中。

PS:我尝试在没有 MvcContrib 属性的情况下手动执行此操作,并且得到了相同的结果。但我更喜欢使用自己的代码,这样我就可以更好地控制整个问题。

有什么建议么?

0 投票
1 回答
809 浏览

asp.net-mvc-3 - 在 MVC3 中,如何全局覆盖 TempDataProvider?

我想在 ASP.NET MVC3 应用程序中更改 TempDataProvider ......我知道我可以通过覆盖在每个控制器上做到这一点CreateTempDataProvider......但我想知道是否有办法在 1 点做到这一点(“全球.asax?") 适用于所有控制器。

我的原因是我的站点位于云服务器上......并且我想在某些情况下实现 Post-Redirect-Get 模式,但我不希望用户被发送到另一台服务器并且永远不会收到他的消息。

0 投票
2 回答
2995 浏览

asp.net - 相当于 ASP.NET 中的 ASP.NET MVC TempData

在 ASP.NET MVC 中,有一个 TempData 可以将数据从一个页面传递到另一个页面。这在 ASP.NET 中的等价物是什么?

0 投票
1 回答
214 浏览

html - 如何避免记住查询字符串参数?

我正在网站上开发一个消息传递系统。

当用户发送消息时,她被重定向到inbox?status=sent显示整洁状态Message sent

但是,如果她继续查看任何收件箱消息并单击Back,她将再次被带到此状态页面,而我不想再显示它。

处理这个问题的标准方法是什么?