2011-09-16 45 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