2011-11-11 19 views
9

Estoy obligado a entregar un componente, incluida la lógica de negocios y la IU, para ser utilizado en un sitio web ASP.NET MVC 3 que sea siendo desarrollado por otra empresa.Cómo crear un control/componente ASP.NET MVC 3 que pueda ser reutilizado por otras aplicaciones

Conozco bien los controles de servidor ASP.NET WebForms y cómo empaquetarlos y distribuirlos para que se reutilicen en todos los proyectos. También tengo experiencia con el enfoque MVC en general y algo de experiencia ASP.NET MVC. Sí, leí materiales que recomiendan el uso de ayudantes de HTML y similares, pero la mayor parte de esto se refiere solo a la reutilización o reutilización de UI dentro de un solo proyecto ASP.NET MVC. No encontré ninguna mención de cómo empaquetar y distribuir dicha funcionalidad para ASP.NET MVC.

La lógica comercial es la parte principal de este componente. Se supone que es una especie de asistente, que avanza a través de muchos pasos y que también funcionaría con la base de datos utilizando Entity Framework y enviará un correo electrónico al usuario una vez que se complete.

  • ¿Cómo hago para crear un control/componente que encapsula la lógica de negocio complejas y también hace su propia interfaz de usuario/vista de salida y que sería distribuible en forma de un conjunto independiente? ¿Es esto posible o solo en cierta medida?

  • ¿Sería esto posible de alguna manera envolviendo el modelo, la vista y el controlador dentro de un conjunto?

  • ¿O sería mejor abordar esto solo como un modelo complejo? De ser así, ¿cómo sería posible conectar la UI/vista y el controlador a este componente por parte del consumidor del componente?

también vi un par de vendedores por ahí, como Telerik, que venden algo en la línea de ASP.NET MVC controles/componentes, por lo que supongo que de alguna manera es posible hacerlo.

+3

Creo que esto es lo que estás buscando. http://stackoverflow.com/questions/6656843/how-to-reuse-areas-controllers-views-models-routes-in-multiple-apps-or-websi –

+0

@Valamas Gracias por el enlace, fue servicial. – famousgarkin

Respuesta

3

This article dice cómo llamar a controladores de otros montajes.

Para reutilizar solo vistas, puede usar RazorGenerator.

+1

Actualmente estoy usando RazorGenerator para pegar vistas comunes en nuestra biblioteca común, y realmente funciona. Puedes envolver todo lo que estás buscando hacer en un solo ensamblaje y ser bueno para llevar. – IronicMuffin

Cuestiones relacionadas