3

需要编写一个门户,如基于 ASP.NET 的 Web 应用程序。应该有一个轻量级的中央应用程序,它实现主要的导航身份验证。设计是通过masterpages实现的。

然后有几个或多或少独立的应用程序(旧的和新的!!),它们应该很容易独立地集成到这个中央应用程序中(应该是这些应用程序的入口点)。哪些方式架构模式技术可能性 可以帮助和支持实现这些目标?例如,在iframe中运行(子)应用程序是否有意义?

是否有(轻量级且易于学习的)门户框架,可以使用(不是像“DOTNETNUKE”这样的大东西)?

非常感谢您的提示、提示和帮助!

4

2 回答 2

3

不要重新发明轮子!DotNetNuke 的特点是它可以和你做的一样大或一样小。如果你使用得当,你会发现你可以将它限制在你需要的范围内。不要让自己经历别人已经让自己经历过的痛苦。当然,除非你只对从痛苦中学习感兴趣。

我并不是说 DNN 适合您。可能不是,但在决定编写自己的门户之前,请花时间调查一些开源门户。如果您从头开始编写所有功能,您描述的功能将需要 1000 小时来开发和测试。

@Michael Shimmins 提出了一些很好的建议,说明如何使用一些较新的技术和最佳实践模式来实现门户应用程序。我会说,是的,这些都是非常好的建议,但我鼓励你要么找到已经这样做过的人,要么在 codeplex 上开始一个新的开源项目并让其他人帮助你。

于 2010-07-06T08:45:39.077 回答
2

Daniel Dyson 提出了一个很好的观点,但如果你真的想自己实现它(可能是有原因的),我会考虑以下组件:

  • MVC 2.0
  • 控制反转/依赖注入(例如结构图)
  • 托管可扩展性框架
  • NHibernate(直接或通过诸如 Sh#rp 或 Spring.NET 之类的库
  • 服务总线(例如 NServiceBus)。

这种组合通过 MVC 为您提供灵活的用户界面,可以通过插件轻松添加(通过 MEF 公开和使用),一个标准数据访问库(NHibernate),可以通过单个插件轻松配置以连接到特定数据库,通过在运行时组成的组件(NServiceBus)发布事件和“拾取”事件的能力。

使用 IoC 和 DI,您可以传递基于所需配置在运行时解析的接口。MEF 让您可以灵活地定义每个插件可以做什么,然后将其留给插件来执行,而您的中央应用程序控制交叉关注点,例如身份验证、日志记录等。

于 2010-07-06T08:55:59.863 回答