相关疑难解决方法(0)

资源不加载当前文化

我正在尝试改变 a 的文化,ASP.NET Web API 2 但我不知道要覆盖哪个函数

我已经尝试过ExecuteAsyncInitialize但无论如何该应用程序都使用英语资源。

这就是我设定文化的方式

        protected void SetCulture(string cultureName)
        {
            // Validate culture name
            cultureName = CultureHelper.GetImplementedCulture(cultureName);

            // Modify current thread's cultures            
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(cultureName);
            Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;
        }

        protected override void Initialize(HttpControllerContext controllerContext)
        {
             if (controllerContext.Request.Headers.AcceptLanguage != null &&
                controllerContext.Request.Headers.AcceptLanguage.Count > 0)
             {
                 string language = controllerContext.Request.Headers.AcceptLanguage.First().Value;

                 SetCulture(language);
             }
            base.Initialize(controllerContext);
        }
Run Code Online (Sandbox Code Playgroud)

这里的资源始终是英文的。我戴上了手表Thread.CurrentThread.CurrentCulture,上面写着fr

        private void SendConfirmationEmail(string userId)
        {
            ...
            UserManager.SendEmail(userId,
                Resources.Resources.ConfirmAccount,
                Resources.Resources.PleaseClickToConfirmAccount
                                                + callbackUrl);

        }
Run Code Online (Sandbox Code Playgroud)

我们如何设定当前的文化?

编辑 …

c# asp.net-web-api

4
推荐指数
1
解决办法
4333
查看次数

标签 统计

asp.net-web-api ×1

c# ×1