.NET Framework release notes describe product improvements grouped by product area. Each change includes a Microsoft-internal VSTS bug number, which acts as a useful unique ID for each change (can be used to report issues or when calling Microsoft Support).
Post-release servicing updates are also included, appended to the end of each product area. The following servicing updates have been included:
Fixed a crash in IIS Manager when opening content view. [1093488]
New web site template doesn't cause warnings. [1099514]
Browsing to an asmx file or wsdl with an IDN binding set in IIS doesn't cause a URI parsing exception. [110223]
Request validation can be completely disabled in an application. [412689]
EmailAddress attribute can load error message from resource. [468241]
GridView.CreateChildControl returns the correct CreatedRowCount when CustomPaging is enabled. [782891]
Custom output cache providers don't cause exception on cache policy settings serialization when more than one invalidation handler is present. [789904]
VaryByContentEncoding is now case-insensitive. [830641]
HttpContextWrapper.IsPostNotification returns the correct value based on pipeline event. [839206]
HtmlTextWriter renders element as self-closing tag. [852940]
Posting invalid payload to ASP.NET with trace and 4.0 request validation enabled doesn't crash the worker process. [867196]
MemoryCache doesn't throw null reference expression when CacheItemPolicy.UpdateCallback is defined. [879799]
DiskBuildResultCache.CacheBuildResult has a null check for CompiledResult.ResultAssembly. [880034]
ContentDisposition constructor doesn't modify date values of the provided disposition string. [884362]
Calling MachineKey.Decode on ASP.NET application start or on first request doesn't throw null reference exception. [896595]
MemoryCache Trim method evicts all items. [902234]
Overloads of HttpUtility.UrlEncode and UrlEncodeToBytes taking (byte[] bytes, int offset, int count) respects the offset and count parameter values. [912606]
Setting culture to auto:* in web.config doesn't cause CultureNotFoundException. [714999]
Projected DirectX value types can be marshalled to WinRT. [1166515]
New WeakReference() doesn't cause COMException. [973791]
Persian calendar is a supported formatting calendar, correctly handles part of day formatting, and uses correct era names. [1068336], [1117304], [1154104], [1087763]
DateTime Parse and TryParse behave the same on en-CA culture. [1117950]
AAD has integrated check for the pooled connection. [1118488]
French and Norwegian culture display name includes proper Unicode characters. [1147042]
ConcurrentDictionary serialization format changed, but is upwards compatible from .NET Framework 4.5 to .NET Framework 4.6. [1167398]
SqlBulkCopy truncates data before encrypting. [1159595]
GetProviderSpecificValue returns proper data type for encrypted columns when underlying data is null. [1159595]
French and Norwegian culture display name includes proper Unicode characters. [1147042]
Uri constructor doesn't throw ArgumentOutOfRangeException when parsing certain URIs with escaped international characters. [1173958]
When using RSACng (or another class which directly or indirectly uses RSACng) to perform encryption using RSAEncryptionPadding.Pkcs1 when the private key is stored on a smartcard (or other hardware security module) an exception of System.Security.Cryptography.CryptographicException: The parameter is incorrect. at System.Security.Cryptography.NCryptNative.DecryptData[T](SafeNCryptKeyHandle key, Byte[] data, T& paddingInfo, AsymmetricPaddingMode paddingMode, NCryptDecryptor`1 decryptor) [299303] [Added: May 2017]
DataContractSerializer doesn't throw InvalidCastException on StringDictionary serialization. [1008489]
Fixed that WCF friendly instance names limited to 64 characters could cause false duplicates as instance names support up to 128 characters. [1022700]
Roles.GetRolesForUser() doesn't throw NullReferenceException in a WCF service hosted in ASP.NET with the AspNetCompatibilityEnabled flag set to false. [1022754]
ProcessMessage31 uses cached delegate for ProcessMessage4. [1030713]
System.ServiceModel.Syndication.SyndicationFeed can parse . [1088425]
Client certificate information is added as claim by default. [1103426]
Warning message added if users enable "wcf:ensureUniquePerformanceCounterInstanceNames" app setting without the user hosting the service having the proper permissions. [1108004]
Fixed null reference and access violation exceptions in System.ServiceModel.Channels.MessageHeaders.GetBufferedMessageHeaderReaderAtHeaderContents. [1116949]
WebResponseInputStream doesn't swallow the exception stating that the stream doesn't support read timeouts. [288814]
Auto-generated help produces correct links. [852865]
Added a keep-alive timeout on WCF ServiceHost. [948289]
Fixed a null reference exception in System.Runtime.Serialization when ETW is enabled. [1137758]
Selecting a XAML element with an empty start tag doesn't select its first child instead. [1117943]
Retrieving the font family name for DengXian in WPF doesn't cause an argument exception. [1153238]
Data grid row headers can be right-clicked without changing the current row selection. [1064465]
GlyphRun.InkBoundingBox() and FormattedText.Extent return the same values. [1068545]
RibbonGroup background is not transparent. [1119792], [1119821]
PrintQueue.GetPrintCapabilities doesn't cause memory leak. [1134697]
TreeView doesn't scroll to random position when nodes are expanded and collapsed repeatedly. [1137957]
Running MultipleTopWindows cross AppDomain on Windows 8 and 10 doesn't throw. [1138471]
Debugging WPF in browser application doesn't cause SecurityException in PresentationFramework.dll. [1145697]
List virtualization doesn't cause crash in GitHub for Windows. [992770]
Scrolling in virtualized DataGrid with items of different heights doesn't cause ArgumentNullException. [996725]
WriteableBitmap isn't causing leaks of CWriteProtectedBitmap virtual memory. [997584]
Selection doesn't incorrectly include the previously selected item when moving selection of ListBoxItem bound to ObservableCollection. [999613]
Fixed a UI thread deadlock in pen input code. [1010998]
Margins set in sections in FlowDocuments are respected. [1104560]
Scaling doesn't suffer from rounding errors on odd DPI. [1104807]
Improved thread safety when loading the same XAML resource for the first time in multiple UI threads. [12520]
Touch and stylus events don't stop firing after disconnecting then reconnecting to a remote desktop session. [659672]
Fixed a bouncing scrollbar with custom WPF DataTemplate. [759702]
GetFixedDocumentSequence doesn't throw with error message "UnicodeString property does not contain enough characters to correspond to the contents of Indices property." [796882]
Fixed slow and jumping WPF TreeView issue. [810163]
Fixed overflow exception in WPF System.ServiceModel.Channels.TransmissionStrategy.AddToWindow. [811734]
Fixed InvalidOperationException in multithread application by synchronizing access to the static Stack<> that holds SerializationContext for recycling. [834091]
Snapping and unsnapping the keyboard on a Surface Pro doesn't cause null reference exception in WPF touch input stack. [839668]
TreeView doesn't vanish after node collapse and expand. [888530]
Selected items in a WPF ListBox or ListView control are correct when items.refresh is called from code behind. [945407]
Fixed performance regression in WPF applications caused by the loading of three additional assemblies. [946388]
XamlBuildTask doesn't sporadically report error "Object '' has been disconnected or does not exist at the server" on TFS builds. [955825]
Fixed exception at CaretElement.ConvertToInt32 in WPF TextBox.Focus. [958636]
WPF uses the most recent distance threshold from the registry for recognizing double taps. [959263]
WPF allows for transparent child windows. [959266]
Fixed FlowDocument exception "this TextNavigator has no scoping text element." [960678]
FlowDocument preserves spaces after being saved using XamlWrite. [960699]
Improved UI scrolling when using a virtualized ListView with a pixel scroll unit. [965665]
Fixed null reference exceptions in WPF System.Windows.Controls.ItemContainerGenerator.ContainerFromIndex. [966623]
Improved touch services. [971187]
Fixed RichTextBox spell checking issue with possessives. [1170165]
Window chrome doesn't turn black on maximize with GlassFrameThickness -1. [1176703]
Improved RichTextBox typing performance on low-end GPUs. [1177602]
Applications continue to promote touch events to click after digitizer is removed and reconnected while touching the digitizer. [1186170]
A WPF application with a virtualizing list control (ListBox, DataGrid, TreeView, etc.) can encounter an ArgumentNullException when scrolling to an item whose size has substantially decreased since the last time it was re-virtualized. [273803, 282662, 282664, 367282, 367285] [Added: May 2017]