我正在构建一个 ASP.NET 核心MVC应用程序(build v2.1.0(。
我希望应用程序的用户(我没有任何身份验证,所以任何人都可以成为用户(被迫从 drodownlist 中选择一个值(作为部分视图或其他东西(,然后以某种方式重定向到"主页"。在此操作之前,应用程序中的任何其他链接都不应工作,直到它们从该下拉列表中选择某些内容。
这样,我可以确保他们将选择一个我将显示所有数据的国家/地区。 最终,选择后,该下拉列表应在导航栏中可见,以便随时更改该参数。
此外,我需要该值在整个应用程序中作为"全局"值(会话或其他值(可见。
最简单的解决方案:使用 cookie 存储国家/地区选择。检查控制器中的 cookie 值;如果未设置,请重新路由到可以设置它的下拉页面。如果是,请根据您的代码需要使用它。
编写饼干
Response.Cookies.Append("country", "us");
阅读饼干
var cookie = Request.Cookies["country"];
if (String.IsNullOrWhiteSpace(cookie))
{
return RedirectToAction("ChooseCountry"); // whatever the action name is where they choose the country
}
// rest of code...