<AppContextSwitchOverrides> 元素
定義一或多個由 AppContext 類別所使用的參數,以提供新功能的退出機制。
<configuration>
<runtime>
<AppContextSwitchOverrides>
語法
<AppContextSwitchOverrides value="name1=value1[[;name2=value2];...]" />
屬性和項目
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
value |
必要。 定義一或多個參數名稱及其相關聯的布爾值。 |
value 屬性
值 | Description |
---|---|
“name=value” | 預先定義的參數名稱及其值 (true 或 false )。 多個參數名稱/值組會以分號 (“;” ) 分隔。 如需 .NET Framework 所支援之預先定義參數名稱的清單,請參閱一節。 |
子元素
無。
父項目
元素 | 描述 |
---|---|
configuration |
通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。 |
runtime |
包含有關執行階段初始化選項的資訊。 |
備註
從 .NET Framework 4.6 開始, <AppContextSwitchOverrides>
組態檔中的 專案可讓 API 的呼叫端判斷其應用程式是否可以利用新功能,或保留與舊版連結庫的相容性。 例如,如果 API 的行為在連結庫的兩個版本之間有所變更,元素 <AppContextSwitchOverrides>
可讓該 API 的呼叫端在支援新功能的連結庫版本上選擇退出新的行為。 針對在 .NET Framework 中呼叫 API 的應用程式, <AppContextSwitchOverrides>
元素也可以允許以舊版 .NET Framework 為目標的呼叫端,如果應用程式是在包含該功能的 .NET Framework 版本上執行,則其應用程式可以選擇加入新功能。
元素 value
的 <AppContextSwitchOverrides>
屬性是由由一或多個分號分隔的名稱/值組所組成的單一字串所組成。 每個名稱都會識別相容性參數,且其對應的值為布爾值,true
false
指出是否已設定參數。 根據預設,參數為 false
,而連結庫會提供新功能。 只有在設定參數時,它們才會提供先前的功能(也就是其值為 true
)。 這可讓連結庫為現有的 API 提供新的行為,同時允許相依於先前行為的呼叫端退出退出新功能。
.NET Framework 支援下列參數:
切換名稱 | 描述 | 推出的版本 |
---|---|---|
Switch.MS.Internal. DoNotApplyLayoutRoundingToMarginsAndBorderThickness |
控制 Windows Presentation Foundation 是否使用舊版的演算法進行控件配置。 如需詳細資訊,請參閱風險降低:WPF 版面配置。 | .NET Framework 4.6 |
Switch.MS.Internal. UseSha1AsDefaultHashAlgorithmForDigitalSignatures |
控制 PackageDigitalSignatureManager 用於簽署封裝部分的預設演算法是否為 SHA1 或 SHA256。 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.1 |
Switch.System.Activities. UseMD5CryptoServiceProviderForWFDebugger |
當設定為 false 時,允許在啟用 FIPS 時,使用 Visual Studio 對 XAML 型工作流程專案進行偵錯。 如果沒有它, NullReferenceException 會在對 System.Activities 元件中方法的呼叫中擲回 。 |
.NET Framework 4.7 |
Switch.System.Activities. UseMD5ForWFDebugger |
控制調試程式中工作流程實例的總和檢查碼是否使用 MD5 或 SHA1。 | .NET Framework 4.7 |
Switch.System.Activities. UseSHA1HashForDebuggerSymbols |
控制工作流程總和檢查碼哈希是否使用 .NET Framework 4.7 (true ) 中引進為預設值的 SHA1 演算法,還是使用 .NET Framework 4.8 中預設引進的預設 SHA256 演算法。false 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.8 |
Switch.System.Diagnostics. IgnorePortablePDBsInStackTraces |
控制使用可攜式 PDB 時取得的堆疊追蹤是否可包含來源檔案和行資訊。 false 包含原始程式檔和行資訊;否則為 true 。 |
.NET Framework 4.7.2 |
Switch.System.Drawing. DontSupportPngFramesInIcons |
控制當物件有 PNG 畫面格時Icon,方法是否Icon.ToBitmap擲回例外狀況。 如需詳細資訊,請參閱風險降低:Icon 物件中的 PNG 畫面格。 | .NET Framework 4.6 |
Switch.System.Drawing.Text. DoNotRemoveGdiFontsResourcesFromFontCollection |
判斷 當 方法新增至集合PrivateFontCollection.AddFontFile(String)時,物件是否System.Drawing.Text.PrivateFontCollection適當地處置。 true 以維護舊版行為; false 表示處置所有私人字型物件。 |
.NET Framework 4.7.2 |
Switch.System.Drawing.Printing. OptimizePrintPreview |
控制的效能 PrintPreviewDialog 是否針對網路印表機優化。 如需詳細資訊,請參閱 PrintPreviewDialog 控件概觀。 | .NET Framework 4.6 |
Switch.System.Globalization.EnforceJapaneseEraYearRanges |
控制是否強制執行日曆紀元的年份範圍檢查。 true 以強制執行年份範圍檢查,並 false 停用它們(預設行為)。 如需詳細資訊,請參閱 使用行事曆。 |
.NET Framework 4.6 |
Switch.System.Globalization.EnforceLegacyJapaneseDateParsing |
控制在剖析作業中,是否只將 「1」 辨識為日曆紀元的第一年。 true 表示只辨識 “1”; false 可辨識 “1” 或 Gannen (預設行為)。 如需詳細資訊,請參閱 使用行事曆。 |
.NET Framework 4.6 |
Switch.System.Globalization.FormatJapaneseFirstYearAsANumber |
控制日曆紀元的第一年是否以 「1」 或甘寧表示格式化作業。 true 將紀元的第一年格式化為 「1」; false 將它格式化為甘寧 (預設行為)。 如需詳細資訊,請參閱 使用行事曆。 |
.NET Framework 4.6 |
Switch.System.Globalization.NoAsyncCurrentCulture |
控制異步操作是否不會從呼叫線程的內容流動。 如需詳細資訊,請參閱 CurrentCulture 和 CurrentUICulture 跨工作流程。 | .NET Framework 4.6 |
Switch.System.IdentityModel. DisableMultipleDNSEntriesInSANCertificate |
控制方法是否 X509CertificateClaimSet.FindClaims 只嘗試比對宣告類型與最後一個 DNS 專案。 如需詳細資訊,請參閱風險降低:X509CertificateClaimSet.FindClaims 方法。 | .NET Framework 4.6.1 |
Switch.System.IdentityModel. EnableCachedEmptyDefaultAuthorizationContext |
控制是否允許 AuthorizationContext.Empty 傳回可變動的物件。 | .NET Framework 4.6 |
Switch.System.IO.BlockLongPaths |
控制路徑長度是否超過 MAX_PATH (260 個字元)擲回 PathTooLongException。 如需詳細資訊,請參閱 長路徑支援。 |
.NET Framework 4.6.2 |
Switch.System.IO.Compression. DoNotUseNativeZipLibraryForDecompression |
控制原生 OS 例程是否用於 類別 DeflateStream 的解壓縮。 false 表示使用原生 API; true 使用實作 DeflateStream 。 |
.NET Framework 4.7.2 |
Switch.System.IO.Compression.ZipFile. UseBackslash |
使用反斜杠 (“\”) 而非正斜線 (“/”) 作為 屬性中的 ZipArchiveEntry.FullName 路徑分隔符。 如需詳細資訊,請參閱風險降低:ZipArchiveEntry.FullName 路徑分隔符號。 | .NET Framework 4.6.1 |
Switch.System.IO.Ports. DoNotCatchSerialStreamThreadExceptions |
控制在以 SerialPort 數據流建立的背景線程上擲回的操作系統例外狀況是否會終止進程。 | .NET Framework 4.7.1 |
Switch.System.IO. UseLegacyPathHandling |
控制是否使用舊版路徑正規化,以及和 Path.GetPathRoot 方法是否Path.GetDirectoryName支援 URI 路徑。 如需詳細資訊,請參閱 風險降低:路徑正規化 和 風險降低:路徑冒號檢查。 | .NET Framework 4.6.2 |
Switch.System. MemberDescriptorEqualsReturnsFalseIfEquivalent |
控制是否相等測試會比較 MemberDescriptor.Category 一個物件的 屬性與 MemberDescriptor.Description 第二個對象的屬性。 如需詳細資訊,請參閱 MemberDescriptor.Equals 的不正確實作。 | .NET Framework 4.6.2 |
Switch.System.Net. DontCheckCertificateEKUs |
停用憑證增強金鑰使用方式 (EKU) 物件識別碼 (OID) 驗證。 增強金鑰使用方法 (EKU) 延伸模組是表示使用金鑰之應用程式的物件識別碼 (OID) 集合。 | .NET Framework 4.6 |
Switch.System.Net. DontEnableSchSendAuxRecord |
停用使用 SCH_SEND_AUX_RECORD,以停用 TLS1.0 瀏覽器惡意探索 SSL/TLS (BEAST) 風險降低功能。 | .NET Framework 4.6 |
Switch.System.Net. DontEnableSchUseStrongCrypto |
控制和 System.Net.Security.SslStream 類別是否可以System.Net.ServicePointManager使用 SSL 3.0 通訊協定。 如需詳細資訊,請參閱風險降低:TLS 通訊協定。 | .NET Framework 4.6 |
Switch.System.Net. DontEnableSystemDefaultTlsVersions |
停用 SystemDefault TLS 版本,以還原回 Tls12、Tls11、Tls 的預設值。 | .NET Framework 4.7 |
Switch.System.Net. DontEnableTlsAlerts |
停用 SslStream TLS 伺服器端警示。 | .NET Framework 4.7 |
Switch.System.Runtime.InteropServices. DoNotMarshalOutByrefSafeArrayOnInvoke |
控制 COM Interop 事件上的 ByRef SafeArray 參數是否封送處理回原生程式代碼 (false ) 或是否停用封送處理回原生程式代碼 (true )。 |
.NET Framework 4.8 |
Switch.System.Runtime.Serialization. DoNotUseECMAScriptV6EscapeControlCharacter |
控制 DataContractJsonSerializer 是否根據 ECMAScript V6 和 V8 標準串行化某些控制字元。 如需詳細資訊,請參閱風險降低︰使用 DataContractJsonSerializer 控制字元的序列化 | .NET Framework 4.7 |
Switch.System.Runtime.Serialization. DoNotUseTimeZoneInfo |
控制 是否 DataContractJsonSerializer 支援多個調整,還是只支援時區的單一調整。 如果 true 為 ,它會使用 TimeZoneInfo 型別來串行化和還原串行化日期和時間數據,否則會使用 TimeZone 不支援多個調整規則的類型。 |
.NET Framework 4.6.2 |
Switch.System.Runtime.Serialization.UseNewMaxArraySize |
控制物件串行化和還原串行化期間是否 System.Runtime.Serialization.ObjectManager 使用較大的數位大小。 將此參數設定為 true ,以依這類 BinaryFormatter類型改善大型物件圖形串行化和還原串行化的效能。 |
.NET Framework 4.7.2 |
Switch.System.Security.ClaimsIdentity. SetActorAsReferenceWhenCopyingClaimsIdentity |
控制建 ClaimsIdentity(IIdentity) 構函式是否使用現有的物件參考設定新物件的 ClaimsIdentity.Actor 屬性。 如需詳細資訊,請參閱風險降低︰ClaimsIdentity 建構函式。 | .NET Framework 4.6.2 |
Switch.System.Security.Cryptography. AesCryptoServiceProvider.DontCorrectlyResetDecryptor |
控制是否嘗試重複使用 AesCryptoServiceProvider 解密工具擲回 CryptographicException。 如需詳細資訊,請參閱 AesCryptoServiceProvider 解密器提供可重複使用的轉換。 | .NET Framework 4.6.2 |
Switch.System.Security.Cryptography. DoNotAddrOfCspParentWindowHandle |
控制 CspParameters.ParentWindowHandle 屬性的值是否為 IntPtr,代表視窗句柄的記憶體位置,還是它是視窗句柄(HWND)。 如需詳細資訊,請參閱風險降低︰CspParameters.ParentWindowHandle 應該有 HWND。 | .NET Framework 4.7 |
Switch.System.Security.Cryptography. UseLegacyFipsThrow |
控制在 FIPS 模式中使用 Managed 密碼編譯類別會擲回 CryptographicException (true ) 或依賴系統連結庫實作 (false )。 |
.NET Framework 4.8 |
Switch.System.Security.Cryptography.Pkcs. UseInsecureHashAlgorithms |
判斷某些 SignedCMS 作業的預設值為 SHA1 或 SHA256。 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.1 |
Switch.System.Security.Cryptography.X509Certificates. ECDsaCertificateExtensions.UseLegacyPublicKeyReader |
控制方法是否 ECDsaCertificateExtensions.GetECDsaPublicKey 正確地處理作業系統 (false ) 所支援的所有具名曲線,或還原為舊版行為。 |
.NET Framework 4.8 |
Switch.System.Security.Cryptography.Xml. UseInsecureHashAlgorithms |
判斷某些 SignedXML 作業的預設值為 SHA1 或 SHA256。 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.1 |
Switch.System.ServiceModel. AllowUnsignedToHeader |
判斷安全性模式是否 TransportWithMessageCredential 允許具有不帶正負號「至」標頭的訊息。 這是加入開關。 如需詳細資訊,請參閱 .NET Framework 4.6.1 中的運行時間變更。 |
.NET Framework 4.6.1 |
Switch.System.ServiceModel. DisableAddressHeaderCollectionValidation > |
如果其中一個專案為 null ,則控制建AddressHeaderCollection(IEnumerable<AddressHeader>)構函式是否擲回 ArgumentException 。 |
.NET Framework 4.7.1 |
Switch.System.IdentityModel. DisableCngCertificates |
判斷嘗試搭配 CSG 金鑰儲存提供者使用 X509 憑證是否擲回例外狀況。 如需詳細資訊,請參閱 WCF 傳輸安全性支援使用 CNG 儲存的憑證。 | .NET Framework 4.6.1 |
Switch.System.ServiceModel. DisableExplicitConnectionCloseHeader |
搭配自我裝載服務使用 HTTP 傳輸時,將此值設定為 true 會導致 WCF 忽略將標頭新增 Connection: close 至要求之響應標頭的應用程式。 將此值設定為 false 可啟用將 Connection: close 標頭新增至響應標頭,這會導致在傳送響應之後關閉要求套接字。 |
.NET Framework 4.6 |
Switch.System.ServiceModel. DisableOperationContextAsyncFlow |
處理死結,因為一次將重新進入服務的實例限制為單一執行的線程。 | .NET Framework 4.6.2 |
Switch.System.ServiceModel. DisableUsingServicePointManagerSecurityProtocols |
與 一起 Switch.System.Net.DontEnableSchUseStrongCrypto ,判斷 WCF 訊息安全性是否使用 TLS 1.1 和 TLS 1.2。 |
.NET Framework 4.7 |
Switch.System.ServiceModel. DontEnableSystemDefaultTlsVersions |
的值 false 會設定預設組態,以允許操作系統選擇通訊協定。 的值 true 會將預設值設定為可用的最高通訊協定。 (也適用於舊版架構的服務分支) |
.NET Framework 4.7.1 |
Switch.System.ServiceModel. UseSha1InMsmqEncryptionAlgorithm |
判斷 WCF 中 MSMQ 訊息的預設訊息簽署演算法是否為 SHA1 或 SHA256。 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.1 |
Switch.System.ServiceModel. UseSha1InPipeConnectionGetHashAlgorithm |
控制 WCF 是否使用 SHA1 或 SHA256 哈希來產生命名管道的隨機名稱。 由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.1 |
Switch.System.ServiceModel.Internals IncludeNullExceptionMessageInETWTrace |
控制是否要在例外狀況訊息為 Null 時擲回 NullReferenceException 。 | .NET Framework 4.7 |
Switch.System.ServiceProcess. DontThrowExceptionsOnStart |
控制服務啟動時擲回的例外狀況是否傳播至 方法的 ServiceBase.Run 呼叫端。 | .NET Framework 4.7.1 |
Switch.System.Threading.UseNetCoreTimer |
控制實例是否 Timer 利用高延展環境的效能改善。 如果 true 為 ,則會啟用效能改善;如果 false 為 (預設值),則會停用它們。 |
.NET Framework 4.8 |
Switch.System.Uri. DontEnableStrictRFC3986ReservedCharacterSets |
判斷某些有時譯碼的百分比編碼字元現在是否一致地保留編碼。 如果 true 為 ,則會譯碼它們,否則為 false 。 |
.NET Framework 4.7.2 |
Switch.System.Uri. DontKeepUnicodeBidiFormattingCharacters |
決定 URI 中 Unicode 雙向字元的處理。 true 表示將它們從 URI 中去除; false 保留和百分比編碼。 |
.NET Framework 4.7.2 |
Switch.System.Windows.Controls.Grid. StarDefinitionsCanExceedAvailableSpace |
判斷 Windows Presentation Foundation 在配置空間給 *-columns 時,是否套用舊演算法 (true ) 或新的演算法 (false )。 如需詳細資訊,請參閱風險降低︰方格控制項對 Star-columns 的空間配置。 |
.NET Framework 4.7 |
Switch.System.Windows.Controls.TabControl. SelectionPropertiesCanLagBehindSelectionChangedEvent |
控制選取器或索引標籤控制器或索引標籤在引發選取變更事件之前,一律會更新其選取值屬性值。 | .NET Framework 4.7.1 |
Switch.System.Windows.Controls.Text. UseAdornerForTextboxSelectionRendering |
判斷 和控制項是否可以使用TextBoxPasswordBox非裝飾項式選取轉譯,以防止遮蔽的文字 (false ), 或文字是否只在裝飾項圖層中轉譯 。true |
.NET Framework 4.7.2 |
Switch.System.Windows.Data.Binding. IListIndexerHidesCustomIndexer |
控制類別使用自定義 IList 索引器不正確或true 正確 (false )。System.Windows.Data.Binding |
.NET Framework 4.8 |
Switch.System.Windows.DoNotScaleForDpiChanges |
判斷 DPI 變更是否發生在每一系統 (值 false ) 或每一監視器的基礎上 (值 true )。 |
.NET Framework 4.6.2 |
Switch.System.Windows. DoNotUsePresentationDpiCapabilityTier2OrGreater |
控制當 WPF 在個別監視器感知模式中執行時,控件的大小 System.Windows.Interop.HwndHost 調整是否已停用 (true ) 或啟用 (false )。 |
.NET Framework 4.8 |
Switch.System.Windows.Forms. DisconnectUiaProvidersOnWmDestroy |
控制當對應的控件窗口終結時,提供者是否中斷連線(true false )。 這個參數會提供選擇加入效能修正,以解決物件的流失 IRawElementProviderSimple 問題。 |
.NET Framework 4.8 |
Switch.System.Windows.Forms. DomainUpDown.UseLegacyScrolling |
判斷開發人員是否需要在控件文字存在時特別處理 DomainUpDown.UpButton() 動作。 true 表示要處理 UpButton() 動作; false 針對 DomainUpDown.UpButton() 和 DomainUpDown.DownButton() 動作正確同步處理。 |
.NET Framework 4.7.2 |
Switch.System.Windows.Forms. DontSupportReentrantFilterMessage |
退出宣告程式代碼,允許自定義 IMessageFilter.PreFilterMessage 實作安全地篩選訊息,而不在呼叫 方法時 Application.FilterMessage 擲回例外狀況。 如需詳細資訊,請參閱風險降低:自訂 IMessageFilter.PreFilterMessage 實作。 | .NET Framework 4.6.1 |
Switch.System.Windows.Forms. UseLegacyContextMenuStripSourceControlValue |
決定當使用者從巢狀ToolStripMenuItem控件開啟功能表時,屬性是否ContextMenuStrip.SourceControl傳回原始檔控件。 true 表示傳回 null 、舊版行為; false 傳回原始檔控制。 |
.NET Framework 4.7.2 |
Switch.System.Windows.Forms.UseLegacyToolTipDisplay |
控制工具提示調用支援是否停用 (true ) 或啟用 (false )。 開啟工具提示呼叫支援也需要、 和所Switch.UseLegacyAccessibilityFeatures 定義的舊版輔助功能功能功能,且Switch.UseLegacyAccessibilityFeatures.3 全都已停用 (設定為 false )。 Switch.UseLegacyAccessibilityFeatures.2 |
.NET Framework 4.8 |
Switch.System.Windows.Input.Stylus. EnablePointerSupport |
判斷 WPF 應用程式中是否啟用選擇性 WM_POINTER 的觸控/手寫筆堆疊。 如需詳細資訊,請參閱 風險降低:指標型觸控和手寫筆支援 |
.NET Framework 4.7 |
Switch.System.Windows.Markup. DoNotUseSha256ForMarkupCompilerChecksumAlgorithm |
判斷用於總和檢查碼的預設哈希演算法是SHA256 (false ) 或SHA1(true )。由於 SHA1 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.7.2 |
Switch.System.Windows.Media.ImageSourceConverter. OverrideExceptionWithNullReferenceException |
控制是否擲回舊版 NullReferenceException ,而不是更具體地指出例外狀況原因的例外狀況(例如 DirectoryNotFoundException 或 FileNotFoundException。 它供程序代碼使用,視處理 NullReferenceException 而定。 | .NET Framework 4.7 |
Switch.System.Workflow.ComponentModel. UseLegacyHashForXomlFileChecksum |
控制工作流程項目組建中 XOML 檔案的總和檢查碼哈希是否使用 MD5 演算法 (true ),還是使用 .NET Framework 4.8 中引進為預設值的 SHA256 演算法。由於 MD5 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.8 |
Switch.System.Workflow.Runtime. UseLegacyHashForSqlTrackingCacheKey |
控制 SqlTrackingService 的總和檢查碼哈希是否使用 MD5 演算法true 進行快取字串,或是否使用 .NET Framework 4.8 中引進為預設值的 SHA256 演算法。由於 MD5 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.8 |
Switch.System.Workflow.Runtime. UseLegacyHashForWorkflowDefinitionDispenserCacheKey |
控制工作流程運行時間的總和檢查碼哈希是否使用 MD5 演算法進行true 快取的工作流程定義,還是使用 .NET Framework 4.8 中引進為預設值的 SHA256 演算法。由於 MD5 的衝突問題,Microsoft 建議使用 SHA256。 |
.NET Framework 4.8 |
Switch.UseLegacyAccessibilityFeatures |
控制從 .NET Framework 4.7.1 開始可用的輔助功能功能是否已啟用或停用。 | .NET Framework 4.7.1 |
Switch.UseLegacyAccessibilityFeatures.2 |
控制 .NET Framework 4.7.2 中可用的輔助功能功能是否已啟用 (false ) 或已停用 (true )。 如果 true 為 , Switch.UseLegacyAccessibilityFeatures 也必須 true 啟用 .NET Framework 4.7.1 輔助功能功能。 |
.NET Framework 4.7.2 |
Switch.UseLegacyAccessibilityFeatures.3 |
控制 .NET Framework 4.8 中引進的輔助功能功能是否已啟用 (false ) 或已停用 (true )。 如果 true 為, Switch.UseLegacyAccessibilityFeatures 且 Switch.UseLegacyAccessibilityFeatures.2 也必須是 true 。 |
.NET Framework 4.8 |
Switch.UseLegacyToolTipDisplay |
控制當使用者將滑鼠游標停留在 WPF 控制項上時true ,是否顯示工具提示,或是否同時顯示在鍵盤焦點上,以及透過鍵盤快速鍵顯示(false 預設行為)。 對於在 .NET Framework 4.8 上執行但以舊版 .NET Framework 為目標的應用程式,啟用鍵盤焦點和快捷鍵支援時,都必須 Switch.UseLegacyAccessibilityFeatures 將 、 Switch.UseLegacyAccessibilityFeatures.2 和 Switch.UseLegacyAccessibilityFeatures.3 全部設定為 false 。 |
.NET Framework 4.8 |
Switch.System.Xml. IgnoreEmptyKeySequences |
控制複合索引鍵中的空白索引鍵序列是否由 XSD 架構驗證忽略。 如需詳細資訊,請參閱 風險降低:XML 架構驗證。 | .NET Framework 4.6 |
注意
您也可以呼叫 AppContext.SetSwitch 方法,以程式設計方式設定參數,而不是將 專案新增AppContextSwitchOverrides
至應用程式組態檔。
連結庫開發人員也可以定義自定義參數,以允許呼叫者退出宣告其連結庫更新版本中引進的已變更功能。 如需詳細資訊,請參閱 AppContext 類別。
ASP.NET 應用程式中的切換
您可以將 Add> 元素新增<至 <web.config 檔案的 appSettings> 區段,將 ASP.NET 應用程式設定為使用相容性設定。
下列範例會 <add>
使用 元素,將兩個設定新增至 <appSettings>
web.config 檔案的 區段:
<appSettings>
<add key="AppContext.SetSwitch:Switch.System.Globalization.NoAsyncCurrentCulture" value="true" />
<add key="AppContext.SetSwitch:Switch.System.Uri.DontEnableStrictRFC3986ReservedCharacterSets" value="true" />
</appSettings>
範例
下列範例會 AppContextSwitchOverrides
使用 元素來定義單一應用程式相容性參數 Switch.System.Globalization.NoAsyncCurrentCulture
,以防止文化特性在異步方法呼叫中跨線程流動。
<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Globalization.NoAsyncCurrentCulture=true" />
</runtime>
</configuration>
下列範例會 AppContextSwitchOverrides
使用 元素來定義兩個應用程式相容性參數和 Switch.System.Globalization.NoAsyncCurrentCulture
Switch.System.IO.BlockLongPaths
。 分號會分隔兩個名稱/值組。
<configuration>
<runtime>
<AppContextSwitchOverrides
value="Switch.System.Globalization.NoAsyncCurrentCulture=true;Switch.System.IO.BlockLongPaths=true" />
</runtime>
</configuration>