【问题标题】:How to create an ASP.NET MVC 3 control/component that can be reused by other applications如何创建可由其他应用程序重用的 ASP.NET MVC 3 控件/组件
【发布时间】:2011-12-26 23:04:52
【问题描述】:

我需要交付一个组件,包括业务逻辑和 UI,以便在其他公司正在开发的 ASP.NET MVC 3 网站上使用。

我了解 ASP.NET WebForms 服务器控件以及如何打包和分发它们以便在项目之间重用。我也有一般 MVC 方法的经验和一些 ASP.NET MVC 经验。我确实阅读了推荐使用 HTML 助手和类似内容的材料,但其中大部分仅涉及 UI 可重用性或单个 ASP.NET MVC 项目中的可重用性。我没有找到任何关于如何为 ASP.NET MVC 打包和分发此类功能的信息。

业务逻辑是这个组件的主要部分。它应该是一种向导,它通过许多步骤进行,并且还可以使用实体框架与数据库一起使用,并在完成后向用户发送电子邮件。

  • 我将如何创建一个控件/组件来封装复杂的业务逻辑并呈现其自己的 UI/视图输出并且可以以独立程序集的形式分发?这甚至可能还是仅在某种程度上?

  • 这是否可以通过将模型、视图和控制器包装在一个程序集中来实现?

  • 或者将其视为一个复杂模型会更好吗?如果是这样,组件的使用者如何将 UI/视图和控制器连接到该组件?

我也确实看到了一些供应商,例如 Telerik,他们销售一些类似 ASP.NET MVC 控件/组件的产品,所以我认为这是可以做到的。

【问题讨论】:

标签: asp.net asp.net-mvc reusability


【解决方案1】:

This article 告诉如何从另一个程序集调用控制器。

要仅重用视图,您可以使用RazorGenerator

【讨论】:

  • 我目前正在使用 RazorGenerator 在我们的公共库中粘贴公共视图,它确实起到了作用。你可以把你想做的所有事情都打包到一个程序集中,然后就可以开始了。
【解决方案2】:

我建议你参考 CodePlex 的MVC Control ToolKit 项目页面

另见ASP.Net MVC Sprite项目

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-05
    • 2011-12-08
    • 1970-01-01
    • 2016-11-05
    • 1970-01-01
    • 2011-11-16
    • 2021-06-28
    相关资源
    最近更新 更多