MVC3子域路由问题

时间:2013-09-22 12:19:45

标签: c# asp.net asp.net-mvc-3 routing subdomain

您好我想构建一个MVC3应用程序,它可以处理简单和子域请求。 问题在于路由设置,并在内部生成正确的路径 原生mvc3 Html扩展( ActionLinks,Url.Content,Html.BeginForm,Ajax.BeginForm

所以..我有以下结构:

                   myDomain.com   // HomeController
                        |
Bar.myDomain.com <------|-------> Foo.myDomain.com
// BarController                  // FooController

HomeController ,映射到 myDomain.com ,其路径应如下所示:

myDomain.com                  // myDomain.com/{controller}/{action}  -- with defaults
myDomain.com/Home/Index       // myDomain.com/{controller}/{action}
myDomain.com/Home/Index/Id    // myDomain.com/{controller}/{action}/{id}
myDomain.com/en/Home/Index    // myDomain.com/{language}/{controller}/{action}
myDomain.com/en/Home/Index/Id // myDomain.com/{language}/{controller}/{action}/{id}

BarController 通过路线映射到 Bar.myDomain.com

Bar.myDomain.com               // {Controller}.myDomain.com/{action}  -- with defaults
Bar.myDomain.com/Index         // {Controller}.myDomain.com/{action}
Bar.myDomain.com/Index/Id      // {Controller}.myDomain.com/{action}/{id}
Bar.myDomain.com/en/Index      // {Controller}.myDomain.com/{language}/{action}
Bar.myDomain.com/en/Index/Id   // {Controller}.myDomain.com/{language}/{action}/{id}

FooController BarController

相同

问题:

子域请求的所有HtmlHelper都生成路径,如:

href="Bar.myDomain.com/en/Bar/Index"
href="Bar.myDomain.com/Bar/Index"

而不是:

href="Bar.myDomain.com/en/Index"
href="Bar.myDomain.com/Index"

在何处以及如何根据路径控制路径。

注1: AdressBar中的URL生成正常。问题只出在路径上。

注2:请关注IIS 7.0集成管道

注3:我的灵感来源是---&gt;&gt; Here

谢谢!

0 个答案:

没有答案