このブログをチェックしてください。デフォルトの MapRoute を変更せずに。
_Layout.cshtml ページ:
@using Resources;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<div>
<form method="post">
@TestResource.SelectLanguage
<select name="lang">
<option></option>
<option value="en-GB" @(Culture == "en-GB" ? "selected=\"selected\"" : "")>English</option>
<option value="fr-FR" @(Culture == "fr-FR" ? "selected=\"selected\"" : "")>French</option>
<option value="de-DE" @(Culture == "de-DE" ? "selected=\"selected\"" : "")>German</option>
</select>
<input type="submit" value="@TestResource.Submit" />
</form>
</div>
@RenderBody()
</body>
</html>
カルチャは _PageStart.cshtml ファイル内で設定されます。
@{
Layout = "~/_Layout.cshtml";
if(!Request["lang"].IsEmpty()){
Culture = UICulture = Request["lang"];
}
}
最後のページは、デフォルト ページそのものです。
@using Resources;
<h1>@TestResource.Welcome</h1>
<p><img src="images/@TestResource.FlagImage" /></p>
http://www.mikesdotnetting.com/Article/183/Globalization-And-Localization-With-Razor-Web-Pages