为什么我用ASP.NET获得404?

时间:2011-04-09 01:48:11

标签: asp.net configuration

我刚开始使用ASP.NET,我以前的经验都是桌面编程。 VS2010 SP1和我正在看微软的音乐商店教程。我正试图打造一个问候,世界页面 - 但它只是返回404。

Win 7 64位,IIS已安装并正在为HTML工作,我有一个我写的静态页面,但是现在我希望服务器做一些有用的事情。

当我在VS中点击F5时,ASP.NET开发服务器就像它应该出现在任务栏中一样,但我得到的只是404.请注意,这是 NOT 来自IIS的404,它看起来非常不同。这告诉我,我正在连接到ASP.NET服务器而不是IIS服务器。

我很确定这是一个配置问题(我没有其他的东西,我很难想象还有其他任何错误)但谷歌没有发现任何相关的东西。我应该在哪里看?

Re:评论 - 当我回到404页面时,它到达服务器,而不是服务器找不到错误。

教程: http://mvcmusicstore.codeplex.com/releases/view/59112#DownloadId=197609

1 个答案:

答案 0 :(得分:1)

要获取要显示的默认页面,您需要在名为HomeController的Controllers文件夹中创建一个控制器。

public class HomeController : Controller
{
    //
    // GET: /Home/

    public string Index()
    {
        return "Hello From Home";            
    }
}

在MVC中,默认情况下,Urls连接到控制器名称(减去“controller”)和方法名称。创建Index方法基本上相当于创建index.htm页面。创建此控制器后,您应该能够显示以下URL(假设ASP.NET Web服务器在端口12345上运行):

http://localhost:12345/
http://localhost:12345/Home

两者都应显示“Hello From Home”文本。另外,假设您创建一个类似下面的控制器:

public class Default1Controller : Controller
{
    //
    // GET: /Default1/

    public string Index()
    {
        return "This is the index";
    }

    public string MyNewPage()
    {
        return "This is the new page";
    }
}

此控制器将显示在以下网址:

http://localhost:12345/default1 - should show "This is the index"
http://localhost:12345/default1/mynewpage - should show "This is the new page"