看起来 AppContext
只有一个名为 BaseDirectory
的属性。但是 Environment
类似乎有更多的属性和方法。
所以现在 AppContext
被 Environment
类取代了吗?
看起来 AppContext
只有一个名为 BaseDirectory
的属性。但是 Environment
类似乎有更多的属性和方法。
所以现在 AppContext
被 Environment
类取代了吗?
AppContext
是在.NET 4.6中引入的,因此不会被替换。
MSDN表示:
AppContext是一项新的兼容性功能,它使库编写者能够为其用户提供统一的新功能退出机制。它通过建立松耦合契约来实现组件之间的通信,以便传达退出请求。当对现有功能进行更改时,这种能力通常很重要。相反,新功能已经存在隐式的选择加入。
使用AppContext,库定义并公开兼容性开关,而依赖于它们的代码可以设置这些开关以影响库的行为。默认情况下,库提供新功能,并且只有在设置了开关时才会更改它(例如提供旧的行为)。
简而言之,它提供了处理同一dll的多个版本的功能。
代码示例位于提供的链接中。