【问题标题】:How to build Plug and play MVC applications?如何构建即插即用的 MVC 应用程序?
【发布时间】:2013-11-25 20:29:20
【问题描述】:

构建 MVC Web 应用程序。将是一个由 javascript 高度驱动的单页应用程序(require.js、pager.js、jquery、knockout 等)。

此应用程序将有自己的内置页面、控制器等 - 并且还需要能够接受外部即插即用功能。

理想情况下,我可以将另一个 MVC Web 应用程序中的 .dll 拖放到主应用程序中,它不仅会继承应用程序的控制器,而且还会引入其 Web 文件 (. htm、*.ts、*.js、*.css 等)。

想象一下,每个已安装的 dll 都有一个带有磁贴的主页。引用新的 dll 会将应用的磁贴添加到主页 - 这是应用的入口点。

每个即插即用应用都需要遵守我们的路由设计(针对 MVC 控制器和 PagerJS)。

最后,每个应用都需要能够共享用户登录数据。


我知道我的问题有点宽泛,但我只是想获得一些想法,看看它会把我带到哪里。

【问题讨论】:

标签: asp.net-mvc asp.net-mvc-4 single-page-application plug-and-play


【解决方案1】:

MvcContrib 引入了 Portable Area,这是一组可重复使用的多页功能,可以放入应用程序中以提供丰富的功能,而无需自定义构建功能这在每个应用程序中都是一样的。

这可以被认为是一种插件或插件类型的功能。这种方法的可移植部分是该区域可以作为单个程序集而不是一个程序集和许多其他文件(如视图或其他需要随时间管理和维护的 html 资产)分发。

通过使便携式区域完全独立于单个组件中,这应该可以更轻松地重复使用和升级到该区域。做这样的事情所面临的挑战是,您如何允许应用程序对用户界面进行足够的控制,同时仍然允许将实际视图与逻辑打包在一起。

以上描述是 CodePlex 中一个流行项目的一部分,它可以帮助您理解/使用 Plug-able MVC 应用程序概念背后的技术。

ASP.Net MVC Portable Areas via MvcContrib 是 Eric Hexter 的一篇文章,详细描述了 Portable Area。

【讨论】:

    猜你喜欢
    • 2015-02-03
    • 2020-11-22
    • 2017-04-12
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-10
    相关资源
    最近更新 更多