常见的用途以及在.NET应用领域的最佳实践?(Common uses and best practi

2019-09-02 01:51发布

什么是当一个应用程序中创建新的应用领域的一些准则和最佳实践?

此外,什么是如何应用到多个域使用whithin应用一些常见的用途和例子?

Answer 1:

我见过的最常见的情况是能够提供可扩展性比主程序不同的安全模式。

在一个单独的AppDomain加载插件允许两件事情:

  1. 您可以实现更严格的安全模型
  2. 您可以阻止插件从扯下你的应用程序,如果是越野车

另外一个不错的应用程序域是加载和检查的组件。 在一个单独的AppDomain这样做可以让您搜集从一个单独的程序信息(或运行代码),然后卸载从你的进程空间整个组件。 如果直接加载程序集,没有办法卸载它。 (:加载远程组装,后来又重新装入IE),如果你希望能够在运行时,一种“升级”到一个新的版本,这也很有用。



Answer 2:

建议创建新的域时,您需要将您的应用程序,是不可靠的内举办3 - 第三方组件,或者你不信任他们(如插件),或者您希望能够卸载它们。



Answer 3:

一个典型的例子是用于plugin- /插件样病例。 它不仅让你如果需要卸载DLL,它也给你在什么插件被允许做的更好的安全控制。

此外,如果您创建要再次卸载临时组件(代码生成),这是做一个好办法。 (LCG只允许实现单点的方法,如果你想实现你需要发出一个“真正的”组装一个完整的类)。



文章来源: Common uses and best practices for application domains in .NET?