<AppContextSwitchOverrides> – element

Definuje jeden nebo více přepínačů používaných AppContext třídou k poskytnutí mechanismu odhlášení pro nové funkce.

<Konfigurace>
  <Runtime>
    <AppContextSwitchOverrides>

Syntaxe

<AppContextSwitchOverrides value="name1=value1[[;name2=value2];...]" />

Atributy a prvky

Následující části popisují atributy, podřízené prvky a nadřazené prvky.

Atributy

Atribut Popis
value Požadováno. Definuje jeden nebo více názvů přepínačů a jejich přidružené logické hodnoty.

value – atribut

Hodnota Popis
"name=value" Předdefinovaný název přepínače spolu s jeho hodnotou (true nebo false). Dvojice název/hodnota více přepínačů jsou oddělené středníky (";"). Seznam předdefinovaných názvů přepínačů podporovaných rozhraním .NET Framework najdete v části Poznámky.

Podřízené prvky

Nezaokrouhlovat.

Nadřazené prvky

Element (Prvek) Popis
configuration Kořenový prvek v každém konfiguračním souboru, který je používán modulem Common Language Runtime (CLR) a aplikacemi rozhraní .NET Framework.
runtime Obsahuje informace o možnostech inicializace modulu runtime.

Poznámky

Počínaje rozhraním .NET Framework 4.6 umožňuje element v konfiguračním souboru volajícím rozhraní API určit, <AppContextSwitchOverrides> jestli jejich aplikace může využívat nové funkce nebo zachovat kompatibilitu s předchozími verzemi knihovny. Pokud se například chování rozhraní API mezi dvěma verzemi knihovny změnilo, <AppContextSwitchOverrides> umožňuje volajícím tohoto rozhraní API vyjádřit nesouhlas s novým chováním ve verzích knihovny, které podporují nové funkce. U aplikací, které volají rozhraní API v rozhraní .NET Framework, může element <AppContextSwitchOverrides> také povolit volajícím, jejichž aplikace cílí na starší verzi rozhraní .NET Framework, aby se přihlásily k novým funkcím, pokud je jejich aplikace spuštěná ve verzi rozhraní .NET Framework, která tuto funkci obsahuje.

Atribut value<AppContextSwitchOverrides> prvku se skládá z jednoho řetězce, který se skládá z jednoho nebo více dvojic název/hodnota oddělených středníkem. Každý název identifikuje přepínač kompatibility a jeho odpovídající hodnota je logická hodnota (true nebo false) označující, jestli je přepínač nastavený. Ve výchozím nastavení je falsepřepínač a knihovny poskytují nové funkce. Poskytují pouze předchozí funkce, pokud je přepínač nastaven (to znamená, že jeho hodnota je true). To umožňuje knihovnám poskytovat nové chování existujícího rozhraní API a zároveň umožnit volajícím, kteří závisí na předchozím chování, nesouhlas s novými funkcemi.

Rozhraní .NET Framework podporuje následující přepínače:

Název přepínače Popis Představení
Switch.MS.Internal.
DoNotApplyLayoutRoundingToMarginsAndBorderThickness
Určuje, zda Windows Presentation Foundation používá starší verzi algoritmu pro rozložení ovládacích prvků. Další informace naleznete v tématu Zmírnění rizik: ROZLOŽENÍ WPF. .NET Framework 4.6
Switch.MS.Internal.
UseSha1AsDefaultHashAlgorithmForDigitalSignatures
Určuje, jestli je výchozí algoritmus používaný k podepisování částí balíčku package by PackageDigitalSignatureManager SHA1 nebo SHA256.
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.1
Switch.System.Activities.
UseMD5CryptoServiceProviderForWFDebugger
Pokud je tato možnost nastavená false, umožňuje ladění projektů pracovních postupů založených na XAML pomocí sady Visual Studio při povolení FIPS. Bez ní NullReferenceException je vyvolán volání metod v sestavení System.Activities. .NET Framework 4.7
Switch.System.Activities.
UseMD5ForWFDebugger
Určuje, zda kontrolní součet instance pracovního postupu v ladicím programu používá MD5 nebo SHA1. .NET Framework 4.7
Switch.System.Activities.
UseSHA1HashForDebuggerSymbols
Určuje, jestli hash kontrolního součtu pracovního postupu používá algoritmus SHA1 zavedený jako výchozí v rozhraní .NET Framework 4.7 (true), nebo jestli používá výchozí algoritmus SHA256 zavedený jako výchozí v rozhraní .NET Framework 4.8 (false).
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.8
Switch.System.Diagnostics.
IgnorePortablePDBsInStackTraces
Určuje, zda trasování zásobníku získá při použití přenosných souborů PDB, může obsahovat informace o zdrojovém souboru a řádku. falsezahrnout zdrojový soubor a informace o řádku; v opačném případě . true .NET Framework 4.7.2
Switch.System.Drawing.
DontSupportPngFramesInIcons
Určuje, zda Icon.ToBitmap metoda vyvolá výjimku, když Icon objekt má rámce PNG. Další informace najdete v tématu Omezení rizik: Rámce PNG v objektech ikon. .NET Framework 4.6
Switch.System.Drawing.Text.
DoNotRemoveGdiFontsResourcesFromFontCollection
Určuje, zda System.Drawing.Text.PrivateFontCollection objekty jsou správně odstraněny při přidání do kolekce metodou PrivateFontCollection.AddFontFile(String) . true zachování staršího chování; false odstranit všechny soukromé objekty písma. .NET Framework 4.7.2
Switch.System.Drawing.Printing.
OptimizePrintPreview
Určuje, jestli je výkon PrintPreviewDialog optimalizovaný pro síťové tiskárny. Další informace naleznete v tématu PrintPreviewDialog přehled ovládacího prvku. .NET Framework 4.6
Switch.System.Globalization.EnforceJapaneseEraYearRanges Určuje, jestli se vynucují kontroly rozsahu roků pro japonské éry kalendáře. true vynucování kontrol rozsahu roků a false jejich zakázání (výchozí chování). Další informace najdete v tématu Práce s kalendáři. .NET Framework 4.6
Switch.System.Globalization.EnforceLegacyJapaneseDateParsing Určuje, zda se při analýze operací rozpoznává pouze "1" jako první rok japonského kalendáře. true rozpoznávat pouze "1"; false rozpoznat buď "1", nebo Gannen (výchozí chování). Další informace najdete v tématu Práce s kalendáři. .NET Framework 4.6
Switch.System.Globalization.FormatJapaneseFirstYearAsANumber Určuje, jestli je první rok japonské éry kalendáře reprezentován jako "1" nebo Gannen v operacích formátování. true naformátovat první rok éry jako "1"; false naformátovat ho jako Gannen (výchozí chování). Další informace najdete v tématu Práce s kalendáři. .NET Framework 4.6
Switch.System.Globalization.NoAsyncCurrentCulture Určuje, jestli asynchronní operace neprotékají z kontextu volajícího vlákna. Další informace najdete v tématu CurrentCulture a CurrentUICulture tok napříč úlohami. .NET Framework 4.6
Switch.System.IdentityModel.
DisableMultipleDNSEntriesInSANCertificate
Určuje, jestli se X509CertificateClaimSet.FindClaims metoda pokusí shodovat s typem deklarace identity pouze s poslední položkou DNS. Další informace naleznete v tématu Zmírnění: X509CertificateClaimSet.FindClaims – metoda. .NET Framework 4.6.1
Switch.System.IdentityModel.
EnableCachedEmptyDefaultAuthorizationContext
Určuje, zda povolit AuthorizationContext.Empty vrátit proměnlivý objekt. .NET Framework 4.6
Switch.System.IO.BlockLongPaths Určuje, zda cesty delší než MAX_PATH (260 znaků) vyvolat PathTooLongException. Další informace naleznete v tématu Podpora dlouhých cest. .NET Framework 4.6.2
Switch.System.IO.Compression.
DoNotUseNativeZipLibraryForDecompression
Určuje, zda jsou nativní rutiny operačního systému používány pro dekompresi podle DeflateStream třídy. false používat nativní rozhraní API; true použít implementaci DeflateStream . .NET Framework 4.7.2
Switch.System.IO.Compression.ZipFile.
UseBackslash
Použije zpětné lomítko ("\") místo lomítka ("/") jako oddělovač cesty ve ZipArchiveEntry.FullName vlastnosti. Další informace naleznete v tématu Zmírnění: ZipArchiveEntry.FullName Path Oddělovač. .NET Framework 4.6.1
Switch.System.IO.Ports.
DoNotCatchSerialStreamThreadExceptions
Určuje, jestli výjimky operačního systému vyvolané vlákny na pozadí vytvořené pomocí SerialPort datových proudů proces ukončí. .NET Framework 4.7.1
Switch.System.IO.
UseLegacyPathHandling
Určuje, jestli se používá normalizace starších cest, a Path.GetPathRoot metody podporují Path.GetDirectoryName cesty URI. Další informace naleznete v tématu Zmírnění: normalizace cesty a zmírnění rizik: Kontroly dvojtečky cesty. .NET Framework 4.6.2
Switch.System.
MemberDescriptorEqualsReturnsFalseIfEquivalent
Určuje, zda test rovnosti porovnává MemberDescriptor.Category vlastnost jednoho objektu MemberDescriptor.Description s vlastností druhého objektu. Další informace naleznete v části Nesprávná implementace MemberDescriptor.Equals. .NET Framework 4.6.2
Switch.System.Net.
DontCheckCertificateEKUs
Zakáže ověření identifikátoru objektu (OID) s rozšířeným použitím klíče (EKU). Rozšíření rozšířeného použití klíče (EKU) je kolekce identifikátorů objektů (OID), která označuje aplikace, které klíč používají. .NET Framework 4.6
Switch.System.Net.
DontEnableSchSendAuxRecord
Zakáže zneužití prohlížeče TLS1.0 proti zmírnění rizik SSL/TLS (BEAST) zakázáním použití SCH_SEND_AUX_RECORD. .NET Framework 4.6
Switch.System.Net.
DontEnableSchUseStrongCrypto
Určuje, zda mohou System.Net.ServicePointManager třídy používat System.Net.Security.SslStream protokol SSL 3.0. Další informace najdete v tématu Zmírnění rizik: Protokoly TLS. .NET Framework 4.6
Switch.System.Net.
DontEnableSystemDefaultTlsVersions
Zakáže vrácení verzí PROTOKOLU TLS SystemDefault zpět na výchozí verzi tls12, Tls11 a Tls. .NET Framework 4.7
Switch.System.Net.
DontEnableTlsAlerts
Zakáže výstrahy protokolu SSLStream TLS na straně serveru. .NET Framework 4.7
Switch.System.Runtime.InteropServices.
DoNotMarshalOutByrefSafeArrayOnInvoke
Určuje, zda byRef Sejf Array parametry u událostí zprostředkovatele komunikace com zařaďují zpět do nativního kódu (false) nebo zda je zařazování zpět do nativního kódu zakázáno (true). .NET Framework 4.8
Switch.System.Runtime.Serialization.
DoNotUseECMAScriptV6EscapeControlCharacter
Určuje, zda DataContractJsonSerializer serializuje některé řídicí znaky na základě standardů ECMAScript V6 a V8. Další informace naleznete v tématu Zmírnění: Serializace řídicích znaků pomocí DataContractJsonSerializer .NET Framework 4.7
Switch.System.Runtime.Serialization.
DoNotUseTimeZoneInfo
Určuje, jestli DataContractJsonSerializer podporuje více úprav nebo pouze jednu úpravu časového pásma. Pokud truepoužívá TimeZoneInfo typ k serializaci a deserializaci dat data a času; v opačném případě používá TimeZone typ, který nepodporuje více pravidel úpravy. .NET Framework 4.6.2
Switch.System.Runtime.Serialization.UseNewMaxArraySize Určuje, zda System.Runtime.Serialization.ObjectManager používá větší velikost pole během serializace a deserializace objektu. Tento přepínač nastavte tak, aby true se zlepšil výkon serializace a deserializace velkých grafů objektů podle typů, jako BinaryFormatterje . .NET Framework 4.7.2
Switch.System.Security.ClaimsIdentity.
SetActorAsReferenceWhenCopyingClaimsIdentity
Určuje, zda ClaimsIdentity(IIdentity) konstruktor nastaví vlastnost nového objektu ClaimsIdentity.Actor s odkazem na existující objekt. Další informace naleznete v tématu Zmírnění: ClaimsIdentity Konstruktor. .NET Framework 4.6.2
Switch.System.Security.Cryptography.
AesCryptoServiceProvider.DontCorrectlyResetDecryptor
Určuje, zda pokus o opětovné použití AesCryptoServiceProvider dešifrovače vyvolá CryptographicException. Další informace naleznete v tématu AesCryptoServiceProvider dešifrovací modul poskytuje opakovaně použitelnou transformaci. .NET Framework 4.6.2
Switch.System.Security.Cryptography.
DoNotAddrOfCspParentWindowHandle
Určuje, zda hodnota CspParameters.ParentWindowHandle vlastnost je IntPtr , která představuje umístění paměti popisovače okna, nebo zda se jedná o popisovač okna (HWND). Další informace naleznete v tématu Zmírnění: CspParameters.ParentWindowHandle Očekává HWND. .NET Framework 4.7
Switch.System.Security.Cryptography.
UseLegacyFipsThrow
Určuje, zda použití spravovaných kryptografických tříd v režimu FIPS vyvolá CryptographicException (true) nebo spoléhá na implementaci systémových knihoven (false). .NET Framework 4.8
Switch.System.Security.Cryptography.Pkcs.
UseInsecureHashAlgorithms
Určuje, jestli je výchozí hodnota pro některé operace SignedCMS SHA1 nebo SHA256.
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.1
Switch.System.Security.Cryptography.X509Certificates.
ECDsaCertificateExtensions.UseLegacyPublicKeyReader
Určuje, zda ECDsaCertificateExtensions.GetECDsaPublicKey metoda správně zpracovává všechny pojmenované křivky podporované operačním systémem (false) nebo se vrátí ke staršímu chování. .NET Framework 4.8
Switch.System.Security.Cryptography.Xml.
UseInsecureHashAlgorithms
Určuje, jestli je výchozí pro některé operace SignedXML SHA1 nebo SHA256.
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.1
Switch.System.ServiceModel.
AllowUnsignedToHeader
Určuje, zda TransportWithMessageCredential režim zabezpečení umožňuje zprávy s nepodepsanou hlavičkou komu. Jedná se o přepínač výslovného souhlasu. Další informace naleznete v tématu Změny modulu runtime v rozhraní .NET Framework 4.6.1. .NET Framework 4.6.1
Switch.System.ServiceModel.
DisableAddressHeaderCollectionValidation>
Určuje, zda AddressHeaderCollection(IEnumerable<AddressHeader>) konstruktor vyvolá if ArgumentException jeden z prvků je null. .NET Framework 4.7.1
Switch.System.IdentityModel.
DisableCngCertificates
Určuje, zda pokus o použití certifikátů X509 s poskytovatelem úložiště klíčů CSG vyvolá výjimku. Další informace naleznete v tématu Zabezpečení přenosu WCF podporuje certifikáty uložené pomocí CNG. .NET Framework 4.6.1
Switch.System.ServiceModel.
DisableExplicitConnectionCloseHeader
Pokud používáte přenos HTTP se službou v místním prostředí, nastavení této hodnoty způsobí, že true WCF ignoruje aplikaci, která přidá Connection: close hlavičku do hlaviček odpovědí pro požadavek. Nastavením této hodnoty false povolíte přidání Connection: close hlavičky do hlaviček odpovědi, což vede k zavření soketu požadavku po odeslání odpovědi. .NET Framework 4.6
Switch.System.ServiceModel.
DisableOperationContextAsyncFlow
Zpracovává vzájemné zablokování, které vede k omezení instancí služby opětovného účastníky na jedno vlákno provádění najednou. .NET Framework 4.6.2
Switch.System.ServiceModel.
DisableUsingServicePointManagerSecurityProtocols
Switch.System.Net.DontEnableSchUseStrongCryptoKromě toho určuje, jestli zabezpečení zpráv WCF používá protokol TLS 1.1 a TLS 1.2. .NET Framework 4.7
Switch.System.ServiceModel.
DontEnableSystemDefaultTlsVersions
Hodnota false nastaví výchozí konfiguraci, která operačnímu systému umožní zvolit protokol. Hodnota true nastaví výchozí hodnotu na nejvyšší dostupný protokol. (K dispozici také ve větvi údržby předchozích verzí rozhraní) .NET Framework 4.7.1
Switch.System.ServiceModel.
UseSha1InMsmqEncryptionAlgorithm
Určuje, zda je výchozí algoritmus podepisování zpráv pro zprávy MSMQ ve WCF SHA1 nebo SHA256.
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.1
Switch.System.ServiceModel.
UseSha1InPipeConnectionGetHashAlgorithm
Určuje, jestli WCF používá hodnotu HASH SHA1 nebo SHA256 k vygenerování náhodných názvů pro pojmenované kanály.
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.1
Switch.System.ServiceModel.Internals
IncludeNullExceptionMessageInETWTrace
Určuje, zda má vyvolat NullReferenceException , pokud je zpráva výjimky null. .NET Framework 4.7
Switch.System.ServiceProcess.
DontThrowExceptionsOnStart
Určuje, zda výjimky vyvolané při spuštění služby jsou šířeny do volající metody ServiceBase.Run . .NET Framework 4.7.1
Switch.System.Threading.UseNetCoreTimer Určuje, jestli Timer instance využívají vylepšení výkonu pro vysoce škálovaná prostředí. Pokud truejsou povolená vylepšení výkonu; pokud false (výchozí hodnota), jsou zakázány. .NET Framework 4.8
Switch.System.Uri.
DontEnableStrictRFC3986ReservedCharacterSets
Určuje, zda jsou některé znaky kódované v procentech, které byly někdy dekódovány, nyní konzistentně zakódovány. Jsou-li true, jsou dekódovány; jinak , false. .NET Framework 4.7.2
Switch.System.Uri.
DontKeepUnicodeBidiFormattingCharacters
Určuje zpracování obousměrných znaků Unicode v identifikátorech URI. true prokládání z identifikátorů URI; false pro zachování a kódování procent. .NET Framework 4.7.2
Switch.System.Windows.Controls.Grid.
StarDefinitionsCanExceedAvailableSpace
Určuje, zda Windows Presentation Foundation použije starý algoritmus (true) nebo nový algoritmus (false) při přidělování prostoru na *-sloupce. Další informace najdete v tématu Zmírnění rizik: Přidělení prostoru ovládacího prvku mřížky pro hvězdicové sloupce. .NET Framework 4.7
Switch.System.Windows.Controls.TabControl.
SelectionPropertiesCanLagBehindSelectionChangedEvent
Určuje, zda selektor nebo ovládací prvek karty vždy aktualizuje hodnotu jeho vybrané vlastnosti hodnoty před zvýšením změněné události výběru. .NET Framework 4.7.1
Switch.System.Windows.Controls.Text.
UseAdornerForTextboxSelectionRendering
Určuje, zda je vykreslování výběru založeného na Adorneru k dispozici pro TextBox ovládací PasswordBox prvky, aby se zabránilo odlehlému textu (false) nebo zda se text vykresluje pouze ve vrstvě Adorner (true). .NET Framework 4.7.2
Switch.System.Windows.Data.Binding.
IListIndexerHidesCustomIndexer
Určuje, zda se vlastní indexery IList používají nesprávně (true) nebo správně (false) podle System.Windows.Data.Binding třídy. .NET Framework 4.8
Switch.System.Windows.DoNotScaleForDpiChanges Určuje, zda se změny DPI vyskytují v systému (hodnota false) nebo na základě monitorování (hodnota true). .NET Framework 4.6.2
Switch.System.Windows.
DoNotUsePresentationDpiCapabilityTier2OrGreater
Určuje, zda jsou vylepšení velikosti ovládacích prvků v System.Windows.Interop.HwndHost době spuštění WPF v režimu s podporou monitorování zakázána (true) nebo povolena (false). .NET Framework 4.8
Switch.System.Windows.Forms.
DisconnectUiaProvidersOnWmDestroy
Určuje, zda jsou zprostředkovatelé odpojeni při zničení odpovídajícího ovládacího okna () nebotrue ne (false). Tento přepínač poskytuje výslovný souhlas s opravou výkonu, která řeší únik IRawElementProviderSimple objektů. .NET Framework 4.8
Switch.System.Windows.Forms.
DomainUpDown.UseLegacyScrolling
Určuje, zda vývojář potřebuje speciálně zpracovat DomainUpDown.UpButton() akci, když je ovládací prvek text. true pro zpracování UpButton() akce, falseDomainUpDown.UpButton() aby akce a DomainUpDown.DownButton() akce byly správně synchronizované. .NET Framework 4.7.2
Switch.System.Windows.Forms.
DontSupportReentrantFilterMessage
Odhlasuje se z kódu, který umožňuje vlastní IMessageFilter.PreFilterMessage implementaci bezpečně filtrovat zprávy bez vyvolání výjimky při Application.FilterMessage zavolání metody. Další informace naleznete v tématu Zmírnění: Vlastní IMessageFilter.PreFilterMessage Implementace. .NET Framework 4.6.1
Switch.System.Windows.Forms.
UseLegacyContextMenuStripSourceControlValue
Určuje, zda ContextMenuStrip.SourceControl vlastnost vrátí zdrojový ovládací prvek, když uživatel otevře nabídku z vnořeného ToolStripMenuItem ovládacího prvku. true vrátit null, starší chování; false vrátit správu zdrojového kódu. .NET Framework 4.7.2
Switch.System.Windows.Forms.UseLegacyToolTipDisplay Určuje, jestli je podpora vyvolání popisu zakázaná (true) nebo povolená (false). Povolení podpory vyvolání popisu také vyžaduje starší funkce přístupnosti definované Switch.UseLegacyAccessibilityFeaturesfunkcí , Switch.UseLegacyAccessibilityFeatures.2a Switch.UseLegacyAccessibilityFeatures.3 všechny musí být zakázané (nastaveno na false). .NET Framework 4.8
Switch.System.Windows.Input.Stylus.
EnablePointerSupport
Určuje, zda je v aplikacích WPF povolen volitelný WM_POINTERzásobník dotykového ovládání nebo stylusu. Další informace naleznete v tématu Omezení rizik: Podpora dotykového ovládání a stylusu založeného na ukazatelích .NET Framework 4.7
Switch.System.Windows.Markup.
DoNotUseSha256ForMarkupCompilerChecksumAlgorithm
Určuje, jestli je výchozí hashovací algoritmus použitý pro kontrolní součty SHA256 (false) nebo SHA1 (true).
Kvůli problémům se kolizemi s SHA1 doporučuje Microsoft SHA256.
.NET Framework 4.7.2
Switch.System.Windows.Media.ImageSourceConverter.
OverrideExceptionWithNullReferenceException
Určuje, jestli je místo výjimky vyvolán starší verze NullReferenceException , která konkrétně označuje příčinu výjimky (například DirectoryNotFoundException nebo FileNotFoundException. Je určen pro použití kódem, který závisí na zpracování NullReferenceException. .NET Framework 4.7
Switch.System.Workflow.ComponentModel.
UseLegacyHashForXomlFileChecksum
Určuje, zda kontrolní součet hash souborů XOML v sestaveních projektu pracovního postupu používá algoritmus MD5 (true), nebo zda používají algoritmus SHA256 zavedený jako výchozí v rozhraní .NET Framework 4.8.
Kvůli problémům se kolizemi s MD5 doporučuje Microsoft SHA256.
.NET Framework 4.8
Switch.System.Workflow.Runtime.
UseLegacyHashForSqlTrackingCacheKey
Určuje, jestli funkce hash kontrolního součtu pomocí služby SqlTrackingService používá algoritmus MD5 (true) pro řetězce uložené v mezipaměti nebo jestli používá algoritmus SHA256 zavedený jako výchozí v rozhraní .NET Framework 4.8.
Kvůli problémům se kolizemi s MD5 doporučuje Microsoft SHA256.
.NET Framework 4.8
Switch.System.Workflow.Runtime.
UseLegacyHashForWorkflowDefinitionDispenserCacheKey
Určuje, jestli hodnota hash kontrolního součtu modulu runtime pracovního postupu používá algoritmus MD5 (true) pro definice pracovních postupů uložených v mezipaměti, nebo jestli používá algoritmus SHA256 zavedený jako výchozí v rozhraní .NET Framework 4.8.
Kvůli problémům se kolizemi s MD5 doporučuje Microsoft SHA256.
.NET Framework 4.8
Switch.UseLegacyAccessibilityFeatures Určuje, jestli jsou funkce přístupnosti dostupné od rozhraní .NET Framework 4.7.1 povolené nebo zakázané. .NET Framework 4.7.1
Switch.UseLegacyAccessibilityFeatures.2 Určuje, jestli jsou funkce přístupnosti dostupné v rozhraní .NET Framework 4.7.2 povolené (false) nebo zakázané (true). Switch.UseLegacyAccessibilityFeatures Pokud truemusí být true také povolené funkce přístupnosti rozhraní .NET Framework 4.7.1. .NET Framework 4.7.2
Switch.UseLegacyAccessibilityFeatures.3 Určuje, jestli jsou funkce přístupnosti zavedené v rozhraní .NET Framework 4.8 povolené (false) nebo zakázané (true). Switch.UseLegacyAccessibilityFeatures Pokud true, a Switch.UseLegacyAccessibilityFeatures.2 musí být truetaké . .NET Framework 4.8
Switch.UseLegacyToolTipDisplay Určuje, jestli se popisy zobrazují, když uživatel najede myší na ovládací prvek WPF (true), nebo jestli se zobrazují na fokusu klávesnice i pomocí klávesové zkratky (falsevýchozí chování). Pro aplikace spuštěné v rozhraní .NET Framework 4.8, ale cílí na předchozí verze rozhraní .NET Framework, povolení podpory fokusu klávesnice i klávesové zkratky vyžaduje, aby Switch.UseLegacyAccessibilityFeaturesSwitch.UseLegacyAccessibilityFeatures.2a Switch.UseLegacyAccessibilityFeatures.3 všechny byly nastaveny na false. .NET Framework 4.8
Switch.System.Xml.
IgnoreEmptyKeySequences
Určuje, zda jsou prázdné sekvence klíčů ve složených klíčích ignorovány ověřením schématu XSD. Další informace naleznete v tématu Omezení rizik: Ověření schématu XML. .NET Framework 4.6

Poznámka:

Místo přidání elementu do konfiguračního AppContextSwitchOverrides souboru aplikace můžete přepínače nastavit také programově voláním AppContext.SetSwitch metody.

Vývojáři knihoven můžou také definovat vlastní přepínače, které volajícím umožní vyjádřit výslovný nesouhlas se změněnou funkčností zavedenou v novějších verzích knihoven. Další informace najdete v předmětu AppContext .

Přepínače v aplikacích ASP.NET

Aplikaci ASP.NET můžete nakonfigurovat tak, aby používala nastavení kompatibility přidáním elementu <Add> do <aplikace Nastavení> části souboru web.config.

Následující příklad používá <add> element k přidání dvou nastavení do <appSettings> oddílu souboru web.config:

<appSettings>
  <add key="AppContext.SetSwitch:Switch.System.Globalization.NoAsyncCurrentCulture" value="true" />
  <add key="AppContext.SetSwitch:Switch.System.Uri.DontEnableStrictRFC3986ReservedCharacterSets" value="true" />
</appSettings>

Příklad

Následující příklad používá AppContextSwitchOverrides element k definování jednoho přepínače kompatibility aplikace , Switch.System.Globalization.NoAsyncCurrentCulturekterý brání jazykové verzi v toku mezi vlákny ve volání asynchronní metody.

<configuration>
   <runtime>
      <AppContextSwitchOverrides value="Switch.System.Globalization.NoAsyncCurrentCulture=true" />
   </runtime>
</configuration>

Následující příklad používá AppContextSwitchOverrides prvek k definování dvou přepínačů kompatibility Switch.System.Globalization.NoAsyncCurrentCulture aplikace a Switch.System.IO.BlockLongPaths. Středník odděluje dva páry název/hodnota.

<configuration>
    <runtime>
       <AppContextSwitchOverrides
          value="Switch.System.Globalization.NoAsyncCurrentCulture=true;Switch.System.IO.BlockLongPaths=true" />
    </runtime>
</configuration>

Viz také