Description
Description
Starting with .NET 7 Preview 3, a small set of APIs which were previously announced to be made obsolete are now effectively marked as obsolete via the ObsoleteAttribute
and will impact the developer's build. This is a continuation of #20894 which announced several APIs as obsolete but never made the corresponding change in the core libraries.
Version
Other (please put exact version in description textbox)
Previous behavior
These APIs could be referenced without any build warnings.
New behavior
References to these APIs will produce build warnings with the corresponding diagnostics.
Type of breaking change
- Binary incompatible: Existing binaries may encounter a breaking change in behavior, such as failure to load/execute or different run-time behavior.
- Source incompatible: Source code may encounter a breaking change in behavior when targeting the new runtime/component/SDK, such as compile errors or different run-time behavior.
Reason for change
These APIs were marked as obsolete for different reasons.
Recommended action
Follow the recommended action that is emitted when using the obsolete API.
Feature area
Core .NET libraries
Affected APIs
The following APIs are now correctly marked as Obsolete
and will impact the build:
- System.ComponentModel.IComNativeDescriptorHandler
- System.ComponentModel.MemberDescriptor.GetInvokee(Type, Object)
- System.Data.OleDb.OleDbParameterCollection.Add(String, Object)
- System.Net.FileWebRequest.GetObjectData(*)
- System.Net.FileWebResponse.GetObjectData(*)
- System.Net.HttpWebRequest.HttpWebRequest(SerializationInfo, StreamingContext)
- System.Net.HttpWebRequest.GetObjectData(*)
- System.Net.WebResponse.WebResponse(SerializationInfo, StreamingContext)
- System.Net.WebResponse.GetObjectData(*)
- System.Security.Cryptography.PasswordDeriveBytes.GetBytes(int)
- System.Web.HttpUtility.UrlEncodeUnicode(string)
- System.Web.HttpUtility.UrlEncodeUnicodeToBytes(string)