0

我开始考虑和开发一个大型 Web 应用程序的架构,我想获得关于使用哪些技术和/或框架的建议和/或建议。

该应用程序将是一个使用 Windows 身份验证、在 IIS 上运行并使用 ASP.NET 的基于 Intranet 的网站。它需要构建为带有子 Web 应用程序的主 Web 应用程序。本质上,整个范围是一个基于浏览器的复合 Intranet 应用程序,它由离散的、功能完整的模块或子应用程序组成。

该复合 Web 客户端应用程序将具有一个主模块或外壳模块,以提供整体用户界面结构。此外,shell 模块将提供对所有单个子应用程序或模块可以使用的公共服务的访问。然后每个子应用程序/模块将包含自己的功能和实现,但与 shell 用户界面集成。

接下来,根据用户和可用的子应用程序,主应用程序或外壳应用程序将动态构建选项卡(或按钮或其他东西)作为访问每个单独应用程序的一种方式。而且,我们会将用户和应用程序数据存储在数据库表中。

因此,例如,我们将有一个报告应用程序、一个显示应用程序,以及可能还有几个其他不同的应用程序。在主/外壳应用程序启动时,在确定用户是谁后,主应用程序将查询数据库以确定用户可以使用哪些子应用程序并构建 UI。然后,用户可以在可用的子应用程序之间导航并在每个子应用程序中完成他们的工作。

我希望这一切都有意义。

无论如何,我想知道哪种(如果有的话)预先存在的技术/框架最适合构建和开发这样的系统。

Web 客户端软件工厂会是一个不错的选择吗?其他一些 MVP 解决方案会是一个不错的选择吗?ASP.NET MVC 会是一个不错的选择吗?还有什么????这些都不是一个好的选择,我们应该使用 Web 表单从头开始开发一切吗?还有什么我应该知道的信息吗?

谢谢!!!!

4

2 回答 2

0

ASP.Net MVC2 也方便了区域的使用。这是一个可能有用的链接

http://odetocode.com/Blogs/scott/archive/2009/10/13/asp-net-mvc2-preview-2-areas-and-routes.aspx

基本上你可以使用区域来打破你的“子应用程序”

于 2010-06-18T19:07:42.173 回答
0

在讨论框架之前,在构建这样的系统(可以插入子应用程序的地方)时要考虑的几点:

  • 可能的集成点(数据、服务、业务逻辑、UI)
  • 横切关注点(系统日志、审计日志、配置、安全)
  • 谁将开发子应用程序(您,在您办公室工作的人,或任何人/更大的社区)

我认为在开始构建框架(或选择现有框架)之前,您需要先退一步思考这些方面。

就farmeworks而言:您会发现许多框架,但很少能提供您所追求的全部内容:

  • ASP.NET WebForms 基本上是一块完全空置的土地——你必须自己构建大部分东西,或者引入额外的框架(例如 MS Enterprise Libraries)
  • ASP.NET MVC 实际上是同一件事,但风格不同。

这些都不是“框架”,但您可以将其中任何一个用作低级基础“平台”。

  • MS Ent Libs 非常适合横切关注点(如数据访问、日志记录等),仅此而已。
  • 还有一系列良好的依赖倒置框架,但这些也不是完整的解决方案。

最重要的是控制依赖关系:确保您抽象出数据层(首先),遵守围绕接口隔离、重用等的原则。

您可以考虑的一个选择(我在这里吹自己的小号 - 所以我不公正)是我构建的开源 .net 应用程序框架(' Morphfolia ' 我花了大约 5 年的时间,兼职)。即使您不使用它,您也可能会找到一些可以“窃取”的好主意或代码:

形态叶:

可在http://morphfolia.codeplex.com/下载

于 2010-06-19T06:30:03.457 回答