Pregunta

¿Es posible trazar una ruta con MapRoute y especificar un controlador genérico por ejemplo

        context.MapRoute(
            "Dashboard_Edit", // Route name
            "dashboard/edit/{*pagePath}",
            new { controller = "Dashboard`1", action = "edit", pagePath = "home" }
            );
¿Fue útil?

Solución

Sentimos no permitió a la fábrica controlador por defecto. El tipo "Dashboard`1" es para un tipo genérico abierto y no puede ser construido. En otras palabras, con la fábrica de controlador por defecto los valores solamente permitidos para "controlador" son los que pueden caber la sintaxis de pseudo siguiente:

IController c = new SomeControllerType();

El SomeControllerType debe ser válida (aunque sin el sufijo "controlador" o espacio de nombres), y debe tener un constructor sin parámetros.

Siempre se puede escribir una fábrica de controlador personalizado que tiene una funcionalidad más avanzada y entiende cómo construir tipos genéricos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top