2009-07-27 74 views
1

我有兩個應用程序使用ASP.NET MVC,每個都有多個控制器。IIS - ASP.NET MVC重定向

我想做一個從應用程序A到應用程序B的重定向,但僅限於應用程序A(一個控制器)上的單個路由。

例如,

/applicationA /問題/ *應該重定向到/ applicationB /問題/

/applicationA /質量/不應該重定向

的IIS重定向的例子我展示瞭如何點擊一個文件示例/文件夾並啓用重定向,但我試圖做一個路線,而不是一個物理路徑。

我不想修改ASP.NET源代碼(如果可能的話)。

謝謝。

編輯 - 這是在IIS2上的Win2k3。

回答

1

是的,最後一點是一個真正的警告。如果這是在IIS7上,它會100%更容易!

您可以下載其他應用程序來完成重定向工作,但是編輯MVC應用程序並不困難。假設/問題/和/質量/是不同的路線,爲什麼不做這樣的事情:

public class MyController 
{ 
    public RedirectResult Issue() 
    { 
    //return as a redirect 
    return Redirect("http://applicationb/issue"); 
    } 

    public ActionResult Quality() 
    { 
    //This is here to show that, instead of redirecting, it returns a view. 
    return View(); 
    } 
} 
1

您可以使用URLRewriting.NET根據正則表達式模式進行重定向。

+0

我同意。作爲IIS6的解決方案,UrlRewriting.NET可能是最好的。 @邁克爾,你可能想要添加到答案的網址是http://urlrewriting.net/149/en/home.html。 – 2009-07-28 10:16:14

+0

@dan - 謝謝,我添加了鏈接! – 2009-07-29 14:47:14