<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, <AppContextSwitchOverrides>
může element 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 false
př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. false zahrnout 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 parametry ByRef SafeArray 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ázané (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 true použí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.DontEnableSchUseStrongCrypto Kromě 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 true jsou 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, false DomainUpDown.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.UseLegacyAccessibilityFeatures funkcí , Switch.UseLegacyAccessibilityFeatures.2 a 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_POINTER zá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 true musí 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 true také . |
.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 (false vý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.UseLegacyAccessibilityFeatures Switch.UseLegacyAccessibilityFeatures.2 a 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 <části appSettings> 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.NoAsyncCurrentCulture
který 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>