题
我有被在多个国家推出了一个应用程序。将有在web.config文件中的设置,定义的国家。 国家将不会在URL中。
一些取决于国家的观点变化。 我的第一次尝试是使用一个文件夹,其中包含视图的视图文件夹内,如果它们从默认视图不同:
默认强>
/questions/ask.aspx
<强>西班牙强>
/questions/ESP/ask.aspx
如果有在乡村文件夹的默认视图不使用图。有没有一种方法来扩展视图引擎来查找在全国第一个文件夹的看法?
编辑:
这是唯一的一个POC。要查看完整的实现看看
http://pietschsoft.com/?tag=/mvc
private static string[] LocalViewFormats =
new string[] {
"~/Views/{1}/ESP/{0}.aspx",
"~/Views/{1}/{0}.aspx",
"~/Views/{1}/{0}.ascx",
"~/Views/Shared/{0}.aspx",
"~/Views/Shared/{0}.ascx"
};
public LocalizationWebFormViewEngine()
{
ViewLocationFormats = LocalViewFormats;
}
解决方案
public class MyViewEngine : WebFormViewEngine
{
private static string[] LocalViewFormats = new[] { "~/Views/ESP/{0}.aspx",
"~/Views/ESP/{0}.ascx" };
public MyViewEngine()
{
ViewLocationFormats = LocalViewFormats.Union(ViewLocationFormats).ToArray();
}
}
显然,你不想硬编码的位置,但是这应该给你的总体思路。
不隶属于 StackOverflow