我們知道,ActionResult 的return View()方法里有很多重載方法
如: //
// 摘要:
// 創建一個將視圖呈現給響應的 System.Web.Mvc.ViewResult 對象。
//
// 返回結果:
// 將視圖呈現給響應的視圖結果。
protected internal ViewResult View();
//
// 摘要:
// 創建一個呈現指定的 System.Web.Mvc.IView 對象的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// view:
// 為響應呈現的視圖。
//
// 返回結果:
// 視圖結果。
protected internal ViewResult View(IView view);
//
// 摘要:
// 使用模型創建一個將視圖呈現給響應的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// model:
// 視圖呈現的模型。
//
// 返回結果:
// 視圖結果。
protected internal ViewResult View(object model);
//
// 摘要:
// 使用視圖名稱創建一個呈現視圖的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// viewName:
// 為響應呈現的視圖的名稱。
//
// 返回結果:
// 視圖結果。
protected internal ViewResult View(string viewName);
//
// 摘要:
// 創建一個呈現指定的 System.Web.Mvc.IView 對象的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// view:
// 為響應呈現的視圖。
//
// model:
// 視圖呈現的模型。
//
// 返回結果:
// 視圖結果。
protected internal virtual ViewResult View(IView view, object model);
//
// 摘要:
// 使用視圖名稱和模型創建一個將視圖呈現給響應的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// viewName:
// 為響應呈現的視圖的名稱。
//
// model:
// 視圖呈現的模型。
//
// 返回結果:
// 視圖結果。
protected internal ViewResult View(string viewName, object model);
//
// 摘要:
// 使用視圖名稱和母版頁名稱創建一個將視圖呈現給響應的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// viewName:
// 為響應呈現的視圖的名稱。
//
// masterName:
// 在呈現視圖時要使用的母版頁或模板的名稱。
//
// 返回結果:
// 視圖結果。
protected internal ViewResult View(string viewName, string masterName);
//
// 摘要:
// 使用視圖名稱、母版頁名稱和模型創建一個呈現視圖的 System.Web.Mvc.ViewResult 對象。
//
// 參數:
// viewName:
// 為響應呈現的視圖的名稱。
//
// masterName:
// 在呈現視圖時要使用的母版頁或模板的名稱。
//
// model:
// 視圖呈現的模型。
//
// 返回結果:
// 視圖結果。
protected internal virtual ViewResult View(string viewName, string masterName, object model);
由此可知,當我們修改viewName界面視圖的參數里就可以輸出不同的用戶界面
以首頁為例,假設我們在Views文件下的Home文件里放入已經翻譯成三種語言的.aspx文件,如中文cn_Index.aspx英文en_Index.aspx俄文ru_Index.aspx
這樣我們可以在控制器里先判斷客戶語種
string langIndex = "en";
if (Request.UserLanguages.Length > 0)
{
if (Request.UserLanguages[0].ToLower().Contains("zh"))
{
langIndex = "cn";
}
else if (Request.UserLanguages[0].ToLower().Contains("ru"))
{
langIndex = "ru";
}
}
默認為英語
這樣當程序并會自動根據客戶瀏覽器的默認語種來自動顯示其恰當的語種了,
這樣做非常恰當,從url上看永遠都是在根目錄,同時也不需客戶自己去選擇語種,程序就為其選擇并顯示了