c# - 为什么当我不使用 ConfigureHttps 时,asp.net core 2.1 MVC 中的 TempData 为空?
问题描述
我已经测试了 TempData 用于在两个控制器之间发送数据,例如,SampleController 到 HomeController,但如果没有 ConfigureHttps,它就无法工作。但是当我标记复选框时,ConfigureHttps TempData 被正确执行。为什么?
public class HomeController : Controller
{
public IActionResult Sample()
{
return View();
}
public IActionResult Index()
{
return View();
}
}
public class SampleController : Controller
{
public IActionResult Sample2()
{
TempData["Name"] = "Ali";
TempData["Family"] = "Amiri";
return RedirectToAction("Sample", "Home");
}
}
此代码用于示例在 HomeController 中的操作
@{
ViewData["Title"] = "Sample";
}
<p>@TempData["Name"]</p>
<p>@TempData["Family"]</p>
解决方案
我找到了我的问题,并修复了它。我已经评论了这段代码,然后 TempData 在没有 ConfigureHttps 的情况下正常工作。
services.Configure<CookiePolicyOptions>(options =>{
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
});
推荐阅读
- symfony - Symfony 忽略获取请求的 404 状态码
- sql-server - SQL Server 唯一约束未能丢弃重复记录
- flutter - 如何在 TextField 中仅显示双值
- java - Java Pixelbot(并将鼠标移动到这一点)
- json - 使用 Azure ARM 模板参数数组的 PowerShell 问题(我使用数组执行 ConvertFrom-Json 失败)
- azure - 用于公共应用程序的 Azure Graph 预订 API
- google-apps-script - 添加/设置部门名称以联系
- acumatica - Feature.xml 更改未显示在启用/禁用自定义功能 UI 中?
- python - 如何使用数据框的数值变量的欧几里得距离计算距离矩阵?
- sql - 具有多行结果集的 SQL Server 存储过程