2011-09-16 76 views
0

我有一個傳統的經典ASP應用程序,我正在遷移到ASP.NET MVC 3的過程中。我讓他們在虛擬中並行運行目錄在IIS 6(Windows 2003)中。ASP.NET MVC和經典ASP並排

在我的HomeController我有一個動作:

public RedirectResult Index() 
    { 
     // go to our Classic ASP application for the time being. 
     return Redirect("/default.asp"); 
    } 

據說這是爲了將用戶重定向到Default.asp的,經典的ASP應用程序的開始。但是,當我在瀏覽器中點擊該網站的根目錄時,我在'/'和'/default.asp'之間得到了302重定向循環。

如果我直接進入'/default.asp',一切正常。

我已經在default.asp的頂部放置了一些調試代碼來打印出一些文本並停止(以防它引起302),但它會出現IIS從未實際處理文件。

任何想法?

回答

2

我剛剛設法通過改變我引用我重定向到的文件來解決這個問題。似乎刪除了「/」開頭使得它的工作:

public class HomeController : Controller 
{ 
    public RedirectResult Index() 
    { 
     // go to our Classic ASP application for the time being. 
     return Redirect("default.asp"); 
    } 
} 

我不知道這是爲什麼,我只能希望,它的觸發IIS處理請求回MVC。

0

檢查你的IIS默認頁面,看看是否default.asp是其中之一。如果是這樣,那麼你只需要在你的MVC應用程序中反覆索引動作。

+0

default.asp是在默認文件列表 - 我不明白爲什麼這會導致重定向循環,甚至當我從列表中刪除它同樣的問題仍然存在 –

+0

你可以硬編碼的地址其他申請?不好的形式,但只是爲了測試。你的兩個應用應該有分開的引用是否正確/default.asp可能被視爲MVC中/ Index的默認引用。 – bdparrish