Pergunta

Estou tendo problemas para fazer o roteamento para trabalhar no Mono. A rota padrão funciona bem, mas nada mais faz.

Estas são as rotas que eu configurei:

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

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

E no meu controlador de casa, tenho a ação correspondente:

    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 ();
    }

Agora, se eu navegar para http: // localhost/ Eu recebo a mensagem bem -vinda a ... mas se eu for para http: // localhost/hello/mundo Eu recebo um erro:

value name controller does not match any of the values.

Descrição: HTTP 500. Solicitação de processamento de erro.

Stack Trace:

System.InValidoPoperationException: O Valor Name Controller não corresponde a nenhum dos valores. em system.web.routing.routedata.getRequiredString (System.String Valuename) [0x00000] em System.web.mvc.mvchandler.processRequest (System.web.httpContext HttpContext) [0x00000] no sistema (System.web.httpContext httpContext) [0x00000] em system.web.mvc.mvchandler.system.web.ihtphandler.processRequest (system.web.httpContext httpContext) [0x00000]. [0x00000] em system.web.httpapplication.tick () [0x00000

Estou fazendo algo obviamente errado?

Além da rota adicional, ação e visualização, este é um projeto padrão do ASP.NET MVC criado no Monodevelo.

Foi útil?

Solução 2

Acontece que isso foi um bug na implementação de roteamento mono.

Preenchi um relatório de bug aqui: https://bugzilla.novell.com/show_bug.cgi?id=500739. E agora foi corrigido, embora eu ainda não tenha tentado.

Outras dicas

Parece um bug nos modelos do ASP.NET MVC para o Monodevelop, conforme sugerido na seção de comentários deste publicar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top