Ошибка при доступе к чему-либо, кроме маршрута по умолчанию

StackOverflow https://stackoverflow.com/questions/814673

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня проблемы с настройкой маршрутизации на моно. Маршрут по умолчанию работает нормально, но больше ничего не делает.

Это маршруты, которые я настроил:

        routes.MapRoute(
            "HelloRoute",
            "Hello/{name}",
            new { controller = "Home", action = "Hello" }
        );

        routes.MapRoute(
            "Default",
            "{controller}/{action}/{id}",
            new { controller = "Home", action = "Index", id = "" }
        );

и на моем HomeController у меня есть соответствующее действие:

    public ActionResult Index ()
    {
        ViewData["Message"] = "Welcome to ASP.NET MVC on Mono!";
        return View ();
    }

        public ActionResult Hello(string name)
    {
        ViewData["Message"] = "hello "+name;
        return View ();
    }

Теперь, если я перейду к http: // localhost / , я получу сообщение Добро пожаловать в ... но если я перехожу на http: // localhost / Hello / World , я получаю сообщение об ошибке:

value name controller does not match any of the values.

Описание: HTTP 500. Ошибка обработки запроса.

Трассировка стека:

System.InvalidOperationException: контроллер имени значения не соответствует ни одному из значений.   в System.Web.Routing.RouteData.GetRequiredString (System.String valueName) [0x00000]   в System.Web.Mvc.MvcHandler.ProcessRequest (System.Web.HttpContextBase httpContext) [0x00000]   в System.Web.Mvc.MvcHandler.ProcessRequest (System.Web.HttpContext httpContext) [0x00000]   в System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest (System.Web.HttpContext httpContext) [0x00000]   в System.Web.HttpApplication + c__Iterator2.MoveNext () [0x00000]   в System.Web.HttpApplication.Tick () [0x00000]

я что-то делаю явно неправильно?

Помимо дополнительного маршрута, действия и вида, это стандартный проект asp.net mvc, созданный в Monodevelop.

Это было полезно?

Решение 2

Оказывается, это была ошибка в реализации моно-маршрутизации.

Я заполнил отчет об ошибке здесь: https://bugzilla.novell.com/ show_bug.cgi? ID = 500739 . И теперь это исправлено, хотя я еще не пробовал.

Другие советы

Это похоже на ошибку в шаблонах ASP.NET MVC для MonoDevelop, о чем говорится в разделе комментариев этого запись .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top