Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
130 lines (68 sloc) 9.27 KB
title ms.date ms.assetid author
Runtime Changes for Migration from .NET Framework 4.5.2 to 4.7.2
07/10/2019
2a97f959-464e-4ed8-a396-b168285359e9
chlowell

Runtime Changes for Migration from .NET Framework 4.5.2 to 4.7.2

[!INCLUDEversionselector]

If you are migrating from the .NET Framework 4.5.2 to 4.7.2, review the following topics for application compatibility issues that may affect your app:

ASP.NET

[!INCLUDEGridViews with AllowCustomPaging set to true may fire the PageIndexChanging event when leaving the final page of the view]

Core

[!INCLUDEA ConcurrentDictionary serialized in .NET Framework 4.5 with NetDataContractSerializer cannot be deserialized by .NET Framework 4.5.1 or 4.5.2]

[!INCLUDEAllow Unicode in URIs that resemble UNC shares]

[!INCLUDEAppDomainSetup.DynamicBase is no longer randomized by UseRandomizedStringHashAlgorithm]

[!INCLUDECalling Attribute.GetCustomAttributes on an indexer property no longer throws AmbiguousMatchException if the ambiguity can be resolved by index's type]

[!INCLUDECOR_PRF_GC_ROOT_HANDLEs are not being enumerated by profilers]

[!INCLUDEETW EventListeners do not capture events from providers with explicit keywords (like the TPL provider)]

[!INCLUDEPersian calendar now uses the Hijri solar algorithm]

[!INCLUDEReflection objects can no longer be passed from managed code to out-of-process DCOM clients]

[!INCLUDESupport special relative URI notation when Unicode is present]

[!INCLUDETargetFrameworkName for default app domain no longer defaults to null if not set]

[!INCLUDEX509Certificate2.ToString(Boolean) does not throw now when .NET cannot handle the certificate]

Data

[!INCLUDEConnection pool blocking period for Azure SQL databases is removed]

Debugger

[!INCLUDENull coalescer values are not visible in debugger until one step later]

Globalization

[!INCLUDEUnicode standard version 8.0 categories now supported]

Networking

[!INCLUDEContentDisposition DateTimes returns slightly different string]

Runtime

[!INCLUDEImproved WCF chain trust certificate validation for Net.Tcp certificate authentication]

Security

[!INCLUDERSACng.VerifyHash now returns False for any verification failure]

[!INCLUDESignedXml and EncryptedXml Breaking Changes]

Serialization

[!INCLUDEException message has changed for failed DataContract serialization in case of an unknown type]

Setup and Deployment

[!INCLUDEProduct versioning changes in the .NET Framework 4.6 and later versions]

[!INCLUDEThe .NET Framework 4.6 does not use a 4.5.x.x version when registering itself in the registry]

Tools

[!INCLUDEContract.Invariant or Contract.Requires<TException> do not consider String.IsNullOrEmpty to be pure]

Web Applications

[!INCLUDE"dataAnnotations:dataTypeAttribute:disableRegEx" app setting is on by default in .NET Framework 4.7.2]

Windows Communication Foundation (WCF)

[!INCLUDERemove Ssl3 from the WCF TransportDefaults]

[!INCLUDEWCF AddressHeaderCollection now throws an ArgumentException if an addressHeader element is null]

[!INCLUDEWCF MsmqSecureHashAlgorithm default value is now SHA256]

[!INCLUDEWCF PipeConnection.GetHashAlgorithm now uses SHA256]

[!INCLUDEWCF services that use NETTCP with SSL security and MD5 certificate authentication]

Windows Presentation Foundation (WPF)

[!INCLUDEAccessing a WPF DataGrid's selected items from a handler of the DataGrid's UnloadingRow event can cause a NullReferenceException]

[!INCLUDECalling Items.Refresh on a WPF ListBox, ListView, or DataGrid with items selected can cause duplicate items to appear in the element]

[!INCLUDEChained Popups with StaysOpen=False]

[!INCLUDEChanging the IsEnabled property of the parent of a TextBlock control affects any child controls]

[!INCLUDEHorizontal scrolling and virtualization]

[!INCLUDEItems.Clear does not remove duplicates from SelectedItems]

[!INCLUDEKeytips behavior improved in WPF]

[!INCLUDEListBoxItem IsSelected binding issue with ObservableCollection<T>.Move]

[!INCLUDERight clicking on a WPF DataGrid row header changes the DataGrid selection]

[!INCLUDEWPF Printing Stack Update]

[!INCLUDEWPF spawns a wisptis.exe process which can freeze the mouse]

[!INCLUDEWPF spell checking in text-enabled controls will not work in Windows 10 for languages not in the OS's input language list]

[!INCLUDEWPF windows are rendered without clipping when extending outside a single monitor]

Windows Workflow Foundation (WF)

[!INCLUDEWorkflow now throws original exception instead of NullReferenceException in some cases]

[!INCLUDEWorkflow SQL persistence adds primary key clusters and disallows null values in some columns]

You can’t perform that action at this time.