en-US, pt-BR, es-ES에 대한 현지화 지원이 포함 된 웹 응용 프로그램 (ASP.NET MVC 3)이 있습니다.왜 RedirectToAction이 ThreadID를 변경합니까?
public class HomeController : Controller
{
public ActionResult Index()
{
int threadId = Thread.CurrentThread.ManagedThreadId;
string threadUICulture = Thread.CurrentThread.CurrentUICulture.ToString();
return View();
}
}
public class LanguageController : Controller
{
public ActionResult EN()
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
return RedirectToAction("Index", "Home");
}
public ActionResult ES()
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("es-ES");
Thread.CurrentThread.CurrentCulture = new CultureInfo("es-ES");
int threadId = Thread.CurrentThread.ManagedThreadId;
return RedirectToAction("Index", "Home");
}
public ActionResult PT()
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("pt-BR");
Thread.CurrentThread.CurrentCulture = new CultureInfo("pt-BR");
return RedirectToAction("Index", "Home");
}
}
가 나는 ActionLink로, 나는 언어/ES 스페인어로 변경하고 인덱스 페이지로 리디렉션 전화 EN-US 문화와 응용 프로그램을 시작합니다. 하지만 작동하지 않는 색인 페이지는 영어로 표시됩니다 ...
스레드 ID는 LanguagesController.ES 및 HomeController.Index 메소드에서 다릅니다.
ASP.NET MVC 앱에서 현지화를 관리하는 가장 좋은 방법은 무엇입니까?
다음은 올바른 방향으로 나아갈 수있는 기사입니다. http://blog.stevelydford.com/2011/01/asp-net-mvc-3-internationalization/ –
각 요청은 다른 스레드에 의해 처리됩니다. –