2014年11月4日 星期二

asp.net MVC 多國語系設定



參考文件

ASP.NET MVC 讓 jQuery Validation Plugin 動態切換顯示訊息語系

ASP.NET MVC And Localization

ASP.NET Boilerplate Localization

ASP.NET MVC 你一定要知道怎麼創立HTML Helper

Attributes Tutorial

Localization in ASP.NET MVC 4 – Upgraded

asp.net mvc multilanguage urls/routing  =>要客製一個 controller而且所有新建的controller都要繼承它

ASP.NET MVC Localization - Routing  => controller不用繼承客制的 controller (目前我使用的)

目前我參考的這一個算是蠻好設定的而且有範例碼在 GitHub,自己也有學到新東西

比如 RouteCollectionExtensions,建立一個靜態的類別,在 RouteConfig就可以使用它的方法

public static class RouteCollectionExtensions,而在作語系切換時只要將 cookie locale的值設定為指定語系即可

ASP.NET MVC + ANGULARJS SPA + LOCALIZATION


ASP.NET MVC With AngularJS

如果有使用 angularjs 並且將網頁設定成 SPA方式的話,我使用的方式還要再作修改,要不然angularjs route碰到下列情況就會有問題

 .when('/routeTwo/:donuts', {
            templateUrl: function(params) { return '/routesDemo/two?donuts=' + params.donuts; }
        })


因為在原作者再作 redirect new url時並沒有把 request params (querystring)的參數帶入,所以要在 RedirectHandler的 ProcessRequest內再把參數帶入

 public void ProcessRequest(HttpContext context)
 {
            NameValueCollection queryParameters = context.Request.QueryString;
            string qTring = string.Empty;

            if (queryParameters.Count > 0)
            {
                qTring = "?" + queryParameters.ToString();
           
            }
 
            context.Response.Redirect(this._newUrl+ qTring);
   }


沒有留言:

張貼留言