tempdata相关内容
我正在尝试建立警报列表并将它们添加到 TempData.但如果我不做重定向,它会起作用.当我重定向它给我 500 错误.我也设置了断点,但是在重定向时它没有命中,否则它正确命中. 动作方法 public IActionResult Create(CategoryCreateVM 输入){如果(模型状态.IsValid){var category = mapper.Map
..
我从 FormCollection 填充我的 TempData,然后我尝试使用 MVC 4 在我的视图中检查我的 TempData 的值,但是我的 if 声明没有按照我的预期工作.这是我的代码. 控制器: [HttpPost]公共 ActionResult TestForm(FormCollection 数据){TempData["用户名"] = 数据["var"].ToString();
..
我在 actionfilter 中的第一个请求时将一个值放入 TempData. filterContext.Controller.TempData["value"] = true; 然后第二个请求进来,我检查值 filterContext.Controller.TempData.ContainsKey("value") 价值就在那里.然后第三个请求进来,我再次检查该值 filterCo
..
keep() 和 peek() 有什么区别? MSDN 说: keep():在字典中标记指定键以供保留. peek(): 返回一个包含元素的对象与指定的键相关联,不标记键删除. 我真的不明白有什么区别,他们不是都为另一个请求保留了一个值吗? 解决方案 当TempDataDictionary 中的对象被读取时,它会在请求结束时被标记为删除. 这意味着如果你在 Tem
..
我正在尝试掌握 MVC 框架的窍门,所以请耐心等待. 现在,我使用会话存储的唯一目的是存储当前登录的用户.我的网站很简单.对于此示例,请考虑三个域对象:人员、会议和文件.用户可以登录并查看会议的“仅限会员"个人资料,也可以向其中添加文件,或者在未登录的情况下查看会议的公开“个人资料". 因此,从会议的私人资料中,使用登录用户,我有一个“添加文件"链接.此链接路由到 FileContol
..
我正在使用 ASP.NET MVC 3 构建 Web 应用程序. 我想做的是在两个控制器之间传递值,尽管有很多方法可以做到这一点,但我对使用 TempData 对此特别感兴趣. public ActionResult Action1(){字符串 someMessage;测试 obj = SomeOperation();如果(对象.有效){someMessage = obj.UserName
..
我一直在尝试在重定向后使用 TempData 将数据传递给操作,如下所示: if (!ModelState.IsValid){TempData["ErrorMessages"] = ModelState;return RedirectToAction("Product", "ProductDetails", new { code = model.ProductCode });} 但不幸的是它失
..
在索引中,我添加了一个搜索字段. 当用户输入搜索词并单击过滤器时,将过滤索引(Index).到现在为止还挺好. 我想实现的是,如果用户在同一控制器中执行其他操作(编辑,详细信息,删除等)并返回到索引,我希望恢复搜索. 为此,我使用了 TempData ,但没有成功. 在各种论坛/教程中,我发现生命周期存在冲突.有人说: 放置在TempData中的对象的生存期恰好是另外
..
在尝试减小MVC控制器的大小时,我将大量逻辑重构到服务中(尽管如果将其分解为模型,则同样会发生此问题).我经常发现我直接用想要显示给用户的信息来设置ViewData和/或TempData,例如: var repoUser = new UserRepository(); var foundUser = repoUser.GetUser(userId); if (foundUser == nul
..
我想将后动作中的两个值返回到RedirectToAction中的视图. TempData[]似乎是理想的选择,因为数据仅在用户保存后用于显示成功消息. 我想在成功消息中显示用户刚刚保存的图像的小缩略图以及所保存项目的标题. 当前,我将所有数据作为new MvcHtmlString 传递 TempData["SaveMsg"] = new MvcHtmlString("
..
我了解在StackOverflow上有与此问题类似的问题,但是没有一个问题解决了我的问题,因此我正在创建一个新问题. 正如标题所述,我想检测用户何时刷新页面.我有一个页面,我在其中保存一些有关用户执行的操作的日志信息(例如添加,删除或编辑项目).该日志只能在用户离开页面时保存,而不能通过刷新保存. 我尝试了下面的示例来检测它是刷新还是新请求: public ActionResul
..
我在Controller中将以下类传递数据到View: public ActionResult ControllerToView(){ ... TempData["example"] = "this is a message!"; ... return Redirect("http://myViewPageLink"); } 在我的视图中,我试图通过以下方
..
我正在使用 TempData["hdn"] = "1"; 在控制器中 如果我使用这个 @{ var hdn = (string)TempData["hdn"]; } 在View中为 ,在POST中获得null时为TempData["hdn"]值.如果我在查看时跳过此代码,它将保留在POST中.为什么会这样? 解决方案 TempData值在读取后
..
在ASP.NET MVC中,有一个TempData可以一次将数据从一页传递到另一页.在ASP.NET中,这等效于什么? 解决方案 没有直接等效项(即,仅传递到下一页的数据). 您可以使用Session并在接收页面上将其清除.
..
我正在使用TempData以便在使用RedirectToAction时保留我的模型.它工作正常,但是我有点a恼,认为这可能不是正确的选择.我确实尝试避免使用Session数据,并且我已经读到TempData使用Session.使用安全吗?在负载平衡的环境中使用它可能会出现问题吗? 琐事问题:“安全吗?"-为电影命名. 解决方案 是的,TempData由会话存储支持,因此,如果您处于负
..
是否有一种方法可以让TempData存储在浏览器的Cookie中,而不是存储在会话状态中.我的网站上禁用了会话状态. 谢谢. 解决方案 Nazaf, 尝试以下操作删除Cookie: public void DeleteCookie(string name) { DateTime now = DateTime.UtcNow; string cookieKey
..
我有一个网站正在玩,以获取Razor Pages的困扰.我有一个奇怪的情况,我不确定正在发生什么或如何解决.我正在使用[TempData]在重定向时传递消息.该应用程序可在本地完美运行.一旦发布到Azure,我将添加一个新项目并添加该项目,我被重定向到索引页面,但我从未看到TempData消息. 这是我的索引页面: public class IndexModel : PageModel
..
TempData存储在ASP.NET MVC框架(更具体地讲是ASP.NET MVC 2)中的什么位置?它存储在服务器端,还是发送给客户端? 解决方案 默认情况下,TempData使用ASP.NET会话作为存储.因此它存储在服务器上(默认为InProc).但是您可以定义其他ASP.NET会话状态模式:StateServer和SqlServer.如果不想使用ASP.NET会话,也可以编写一个
..
我正在尝试构建警报列表并将其添加到TempData.但是,如果我不进行重定向,它会起作用.当我确实重定向它给我500错误.我也设置了断点,但是当重定向到其他地方时它没有命中. ActionMethod public IActionResult Create(CategoryCreateVM input) { if (ModelState.IsValid) {
..
如果我重定向到通过TempData的新页面以初始化页面,则它可以正常工作,但是,如果用户在浏览器中按下刷新按钮,则TempData将不再可用. 鉴于此,是否有可以可靠使用TempData的情况? 还是有任何消除或减轻用户刷新问题的方法? 解决方案 在MVC 1中,是的,在存储密钥之后的下一个请求之后,临时数据会丢失. 但是,对于MVC 2,临时数据在首次尝试访问之后会丢失.
..