Como criar um componente / controle ASP.NET MVC 3 que possa ser reutilizado por outros aplicativos

9

Eu tenho que entregar um componente, incluindo lógica de negócios e interface do usuário, para ser usado em um site da Web ASP.NET MVC 3 que está sendo desenvolvido por outra empresa.

Eu conheço os controles do servidor WebForms do ASP.NET e como compactá-los e distribuí-los para serem reutilizados nos projetos. Eu também tenho experiência com a abordagem MVC em geral e algumas experiências ASP.NET MVC. Eu li sobre materiais que recomendam o uso de ajudantes HTML e similares, mas a maior parte disso trata apenas da capacidade de reusabilidade ou reutilização da IU dentro de um único projeto ASP.NET MVC. Eu não encontrei nenhuma menção de como empacotar e distribuir tal funcionalidade para o ASP.NET MVC.

A lógica de negócios é parte importante desse componente. É suposto ser um tipo de assistente, que progride através de várias etapas e que também trabalha com banco de dados usando o Entity Framework e envia um email para o usuário após a conclusão.

  • Como eu poderia criar um controle / componente que encapsula a lógica de negócios complexa e também renderiza sua própria saída de interface do usuário / exibição e que seria distribuível na forma de um assembly autônomo? Isso é possível ou apenas de alguma forma?

  • Será que isso seria factível envolvendo o modelo, a visualização e o controlador dentro de uma montagem?

  • Ou seria melhor abordar isso apenas como um modelo complexo? Em caso afirmativo, como seria possível conectar a interface do usuário / visualização e o controlador a esse componente pelo consumidor do componente?

Eu também vi alguns fornecedores por aí, como a Telerik, que vendem algo nos moldes dos controles / componentes da ASP.NET MVC, então presumo que isso seja de alguma forma possível.

    
por famousgarkin 11.11.2011 в 12:33
fonte

2 respostas

3

Este artigo informa como chamar controladores de outros conjuntos.

Para reutilizar somente visualizações, você pode usar o RazorGenerator .

    
por rcaval 29.12.2011 / 15:31
fonte
2

Eu recomendo que você consulte a página do projeto MVC Control ToolKit do CodePlex

Veja também o projeto ASP.Net MVC Sprite

    
por Prasanth 11.11.2011 / 12:45
fonte