gpt4 book ai didi

.net - AOP 和 .NET : Is Contexts an obsolete concept?

转载 作者:行者123 更新时间:2023-12-02 07:52:55 25 4
gpt4 key购买 nike

最近我开始学习 .NET 中的上下文(上下文绑定(bind)、上下文敏捷、消息接收器等)。几声警钟开始响起:

  1. 所有上下文绑定(bind)类都派生自 ContextBoundObject,后者又派生自 MarshalByRefObject。 MarshalByRefObject 是 .NET Remoting 架构的一部分。 .NET Remoting 架构被认为是过时的。
  2. 大多数与 .NET 相关的书籍很​​少甚至根本不关注上下文的概念。
  3. MSDN 几乎没有提供任何关于上下文的信息:类被解释,但没有提供卫星文章(例如“How To”、“Overview”、“Tutorials”等)。
  4. 大多数讨论 Context 的文章和论坛帖子都是几年前的事了。
  5. 除了同步上下文之外,.NET 框架似乎几乎没有使用上下文架构。

因此,我的问题是:.NET 中的上下文概念是否已经过时并且应该在新的开发中避免?如果它已过时,建议使用哪些替代品?

最佳答案

是的,避免 AOP 的 MarshalByRefObject 和 ContextBoundObject。

大约四年前,我使用上下文绑定(bind)的 MarshalByRefObject 方法推出了一个自定义 AOP 解决方案。当时我知道自己陷入了困境,但还是做了,因为许多用于 .NET 的 AOP 框架还很年轻。

事实上 .NET 通过 MarshalByRefObject 支持 AOP 是一个幸运的意外。 MBO 从未打算用于该目的,将 MBO 用于 AOP 是对 .NET 远程处理和 MBO 的初衷的劫持。

这并不意味着 .NET 不能支持 AOP,只是应该使用支持 AOP 的框架(如 Spring.NET、PostSharp 等)以一种不那么“hacky”的方式来完成。

Here是一篇关于 .NET 的 AOP 框架的好文章,虽然有点过时。

关于.net - AOP 和 .NET : Is Contexts an obsolete concept?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2622614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com