asp.net-mvc – 具有ASP.NET MVC的多语言网站
发布时间:2020-12-30 23:36:06 所属栏目:asp.Net 来源:互联网
导读:当建立一个多语言网站(使用ASP.NET Web表单)时,我将使用HTTP模块来重写URL,最终得到一些友好的(对于人类和搜索引擎),如: uk/products/product_category_one/sub_category_one/index.aspxuk/products/product_category_one/sub_category_one/widget_mk5.aspxe
当建立一个多语言网站(使用ASP.NET Web表单)时,我将使用HTTP模块来重写URL,最终得到一些友好的(对于人类和搜索引擎),如: uk/products/product_category_one/sub_category_one/index.aspx uk/products/product_category_one/sub_category_one/widget_mk5.aspx es/productos/categoría_de_producto_una/widget_mk5.aspx 我的(新手)对MVC的理解是URL应该采用格式
所以用MVC复制上面的功能最终会出现类似于以下的URL: products/category/123/product_category_one/sub_category_one products/items/456/widget_mk5 问题.. >我可以在“控制器”段之前的URL中插入国家/地区代码吗? 谢谢你的帮助 编辑: 解决方法该网址可以采用您喜欢的几乎任何其他形式.有关更多信息,请查看 ASP.NET MVC Framework (Part 2): URL Routing.只是为了启动(由于我不确定它是否是最佳解决方案),您可以在global.asax中添加两条新路由:routes.MapRoute( "ukRoute","{lang}/Products/{action}/{id}/{subcategory}",new { lang = "uk",controller = "Products",action = "Index",id = "",subcategory = "" } ); routes.MapRoute( "esRoute","{lang}/Productos/{action}/{id}/{subcategory}",new { lang = "es",subcategory = "" } ); 这些路径了解以下URL(并将它们映射到ProductsController的ActionResult类别(字符串ID,字符串子类别)方法): uk/Products/Category/1/A es/Productos/Category/1/A 如果您想在视图中创建这样的URL,您可以使用以下内容: <%= Html.RouteLink("English 1.A","ukRoute",action = "Category",id = "1",subcategory = "A" })%> <%= Html.RouteLink("Spanish 1.A","esRoute",subcategory = "A" })%> (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-3 – 方法“OrderBy”必须在方法“跳过”异常之
- asp.net – [DataType(DataType.EmailAddress)]和[EmailAdd
- asp.net-mvc-3 – 大量使用ViewBag
- asp.net-mvc – 尝试创建类型为’TypeNewsController’的控
- ASP.NET 程序中删除文件夹导致session失效问题的解决办法分
- asp.net-mvc-3 – 用于在ASP.NET MVC3中使用Grid.MVC编辑记
- asp.net – 经过身份验证的服务不支持跨域javascript回调.
- asp.net核心 – 如何排除在ASP.NET Core中发布文件?
- asp.net – 应用程序池循环如何影响ASP Net会话状态?
- asp.net-mvc – 使用ASP.Net MVC中的模型绑定器更新父/子记
推荐文章
站长推荐
热点阅读