AppDomainSetup.SetCompatibilitySwitches(IEnumerable<String>) 方法

定义

设置指定的开关,从而使应用程序域针对指定问题与早期版本的 .NET Framework 兼容。

public:
 void SetCompatibilitySwitches(System::Collections::Generic::IEnumerable<System::String ^> ^ switches);
public void SetCompatibilitySwitches (System.Collections.Generic.IEnumerable<string> switches);
member this.SetCompatibilitySwitches : seq<string> -> unit
Public Sub SetCompatibilitySwitches (switches As IEnumerable(Of String))

参数

switches
IEnumerable<String>

指定兼容性开关的字符串值的可枚举集或要擦除现有兼容性开关的 null

注解

.NET Framework的主要版本有时会引入以前的版本的重大更改。 例如,.NET Framework 4 引入了.NET Framework 3.5 中的少量中断性变更。 使用此方法SetCompatibilitySwitches可指定应用程序域应回滚其中一个或多个重大更改,以使行为与旧版.NET Framework兼容。

每次调用此方法时,都会替换现有交换机设置。 若要清除设置,请为switches参数指定null

提供的 switches 字符串值集可以是一个简单的字符串数组,因为数组实现 IEnumerable 接口。

下表提供了兼容性开关的示例,这些开关可以设置为还原早期版本的.NET Framework的行为。

开关 含义
“NetFx40_LegacySecurityPolicy” 此应用程序域中启用了 .NET Framework 3.5 的代码访问安全 (CAS) 。 请参阅 <NetFx40_LegacySecurityPolicy> 元素
“NetFx40_Legacy20SortingBehavior” 此应用程序域中启用了 .NET Framework 3.5 的字符串排序默认值。 成功还原旧排序行为还需要在本地系统上提供sort00001000.dll动态链接库。 请参阅 <CompatsortNLSVersion> 元素
“NetFx40_Legacy40SortingBehavior” 此应用程序域中启用了 .NET Framework 4 和 Unicode 5.0 的字符串排序默认值。 成功还原旧排序行为还需要在本地系统上提供sort00060101.dll动态链接库。
“NetFx40_TimeSpanLegacyFormatMode” TimeSpan此应用程序域中启用了 .NET Framework 3.5 的格式设置行为。 请参阅 <主题的TimeSpan_LegacyFormatMode> 元素 和“还原旧版 TimeSpan 格式”部分 TimeSpan
“UseRandomizedStringHashAlgorithm” 运行时基于每个应用程序域计算字符串的哈希代码,而不是使用单个哈希算法,该算法可跨应用程序域生成一致的哈希代码。 请参阅 <UseRandomizedStringHashAlgorithm> 元素

适用于

另请参阅