Как отладить приложение ASP.NET MVC3, которое выдает ошибку и не достигает точек останова в global.asax? - PullRequest
0 голосов
/ 16 ноября 2011

Сегодня вечером я потратил время на преобразование существующего веб-приложения ASP.NET в MVC3, используя это руководство .Однако, когда я запускаю приложение, чтобы просто запустить приложение локально, чтобы проверить свою работу, я получаю эту ошибку:

Server Error in '/' Application.

The resource cannot be found.

Description: HTTP 404. The resource you are looking for (or one of its
dependencies) could have been removed, had its name changed, or is 
temporarily unavailable.  Please review the following URL and make sure
that it is spelled correctly. 

Requested URL: /

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET     Version:4.0.30319.237

Я пытался установить различные точки останова в моем global.asax, когда яподозревал, что я что-то напортачил с маршрутизацией, но точки останова вообще не достигнуты.Поскольку он не затрагивает мои точки останова в этом файле, то я предполагаю, что мне не нужно одновременно смотреть на Controller или View, так как это дальше по пути выполнения.

Моя структура папок содержит следующие папки и файлы:

Controllers\
    HomeController.cs
Models\
Views\
    Home\
        Index.cshtml
    Shared\
        _Layout.cshtml
        Error.cshtml
    _ViewStart.html
    Global.asax
    web.config
web.config

Вот содержимое файла global.asax:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace www
{
    public class MvcApplication : System.Web.HttpApplication
    {
        public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            filters.Add(new HandleErrorAttribute());
        }

        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            //ignore aspx pages (web forms take care of these)
            routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");

            routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}", // URL with parameters
                // Parameter defaults
                new { controller = "Home", action = "Index"}
                );
        }

        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
        }
    }
}

\ Controllers \ HomeController.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace www.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }

    }
}

Я относительно новичок вASP.NET MVC и Visual studio, поэтому не уверены, с чего начать отладку.Любые советы будут оценены.

1 Ответ

0 голосов
/ 17 ноября 2011

Основываясь на ответе Mystere Man, ответ был таков, что global.asax был ошибочно помещен в папку \ Views \, ​​а не в корень.Как только я переместил это, все было хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...