繁体   English   中英

MVC 5 ASP.Net 切换语言

[英]MVC 5 ASP.Net Switching Language

我有一个已经正常运行多年的 ASP.net MVC 5 应用程序。

最近在法语和英语之间切换已停止工作。 它部署在 Windows Azure 上。

语言的切换在开发机上还是正常的,使用如下代码:

        public ActionResult SetLanguage(string culture)
        {
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(culture);
            Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;
            // Validate input
            culture = MSP.Services.CultureHelper.GetImplementedCulture(culture);
            // Save culture in a cookie
            HttpCookie cookie = Request.Cookies["_culture"];
            if (cookie != null)
                cookie.Value = culture;   // update cookie value
            else
            {
                cookie = new HttpCookie("_culture");
                cookie.Value = culture;
            }
            cookie.Expires = DateTime.Now.AddYears(1);
            Response.Cookies.Add(cookie);


            return RedirectToAction("Index", "Home", new { message = $"The language has now been set to {culture}" });
        }

不确定 Windows Azure 上是否发生了一些变化?

我在添加 cookie 之前添加了以下行:

cookie.Secure = true;

它现在适用于所有浏览器。

事实证明,这是自 2020 年夏天开始逐步推出的 Chromium 浏览器所做的必要更改。 IE cookie 应该是安全的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM