基于 ASP.NET 的门户类应用程序的实现

发布于 2024-09-08 11:19:44 字数 545 浏览 9 评论 0原文

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

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

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

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

There is the requirement, to write a portal like ASP.NET based web application.
There should be a lightweigted central application, which implements the primary navigation and the authentication. The design is achieved by masterpages.

Then there are several more or less independent applications(old and new ones!!), which should easily and independent be integrated into this central application (which should be the entry point of these applications).
Which ways, architectures, patterns, techniques and possibilities can help and support to achieve these aims? For example makes it sense to run the (sub)applications in an iframe?

Are there (lightweighted and easy to learn) portal frameworks, which can be used (not big things like "DOTNETNUKE")?

Many thanks in advance for you hints, tips and help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

森林迷了鹿 2024-09-15 11:19:44

不要重新发明轮子! DotNetNuke 的特点是,它可以大也可以小,由您决定。如果你使用得当,你会发现你可以将其限制在你需要的范围内。不要让自己经历别人已经经历过的痛苦。当然,除非你只想从痛苦中吸取教训。

我并不是说 DNN 适合您。可能不是,但在决定编写自己的门户网站之前,请务必花时间调查一些开源门户网站。如果您从头开始编写您所描述的功能,则需要花费数千个小时来开发和测试它们。

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

DON'T REINVENT THE WHEEL! The thing about DotNetNuke is that it can be as big or as small as you make it. If you use it properly, you will find that you can limit it to what you need. Don't put yourself through the same pain that others have already put themselves through. Unless of course you are only interested in learning from your pain.

I'm not saying that DNN is the right one for you. It may not be, but do spend the time to investigate a number of open source portals before you decide to write your own one. The features that you describe will take 1000s of hours to develop and test if you write them all from scratch.

@Michael Shimmins makes some good suggests about what to use to implement a portal app with some of the newer technology and best practice patterns. I would say, yes these are very good recommendations, but I would encourage you to either find someone who has already done it this way or start a new open source project on codeplex and get other to help you.

淡莣 2024-09-15 11:19:44

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

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

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

您可以使用IoC和DI 。传递根据您所需的配置在运行时解析的接口,使您可以灵活地定义每个插件可以执行的操作,然后将其留给插件来执行,而您的中央应用程序则控制诸如此类的横切问题。如身份验证、日志记录等。

Daniel Dyson makes a fine point, but if you really want to implement it your self (there may be a reason), I would consider the following components:

  • MVC 2.0
  • Inversion of Control/Dependency Injection (StructureMap for instance)
  • Managed Extensibility Framework
  • NHibernate (either directly or through a library such as Sh#rp or Spring.NET
  • A service bus (NServiceBus for instance).

This combination gives you flexible user interface through MVC, which can be easily be added to via plugins (exposed and consumed via MEF), a standard data access library (NHibernate) which can be easily configured by the individual plugins to connect to specific databases, an ability to publish events and 'pick them up' by components composed at runtime (NServiceBus).

Using IoC and DI you can pass around interfaces which are resolved at runtime based on your required configuration. MEF gives you the flexibility of defining 'what' each plugin can do, and then leave it up to the plugins to do so, whilst your central application controls cross cutting concerns such as authentication, logging etc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文