Nomi di parametri modificati in .NET 6
Alcuni nomi di parametri sono stati modificati in modo che siano coerenti tra gli assembly di riferimento e quelli di implementazione. La maggior parte delle modifiche riguarda gli assembly di riferimento, ma alcune sono negli assembly di implementazione.
Comportamento precedente
Alcuni nomi di parametri degli assembly di riferimento erano diversi rispetto ai parametri corrispondenti nell'assembly di implementazione. Ciò può causare problemi durante l'uso di argomenti denominati e reflection.
Nuovo comportamento
In .NET 6 questi nomi di parametri non corrispondenti sono stati aggiornati in modo che siano coerenti tra gli assembly di riferimento e quelli di implementazione.
La tabella seguente illustra le API e i nomi dei parametri modificati. Sono stati modificati anche alcuni nomi di parametri nei tipi derivati da Stream
.
Motivo della modifica
- Nei casi in cui sono stati modificati i nomi di parametri dell'assembly di riferimento, i nuovi nomi sono stati considerati più appropriati o leggibili e con effetti minimi sul funzionamento.
- Nei casi in cui i nomi dei parametri di runtime sono stati modificati per ottenere coerenza tra piattaforme o con gli assembly di riferimento, l'implementazione di runtime corrisponde ora all'API pubblica e alla documentazione per il metodo.
Versione di introduzione
.NET 6
Azione consigliata
Se si verifica un errore del compilatore a causa di una modifica del nome del parametro, aggiornare di conseguenza il nome del parametro.
Se si usa la reflection di runtime per esaminare i metodi ed esiste una dipendenza dai nomi dei parametri, aggiornare il codice in modo da usare i nuovi nomi di parametro.
API interessate
- Microsoft.VisualBasic.Strings.InStr(Int32, String, String, CompareMethod)
- System.Attribute.GetCustomAttributes(MemberInfo, Type)
- System.Attribute.GetCustomAttributes(MemberInfo, Type, Boolean)
- System.Collections.Generic.SortedList<TKey,TValue>.System.Collections.ICollection.CopyTo(Array, Int32)
- System.IO.StreamWriter.WriteLine(ReadOnlySpan<Char>)
- System.IO.FileStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)
- System.IO.FileStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)
- System.IO.MemoryStream.Read(Span<Byte>)
- System.IO.MemoryStream.ReadAsync(Memory<Byte>, CancellationToken)
- System.IO.MemoryStream.Write(ReadOnlySpan<Byte>)
- System.IO.MemoryStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)
- System.IO.UnmanagedMemoryStream.Read(Span<Byte>)
- System.IO.UnmanagedMemoryStream.Write(ReadOnlySpan<Byte>)
- System.Numerics.Vector.Narrow
- System.Numerics.Vector.Widen
- System.Security.Cryptography.Pkcs.Rfc3161TimestampRequest.ProcessResponse(ReadOnlyMemory<Byte>, Int32)
- System.Security.Cryptography.Pkcs.Rfc3161TimestampToken.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampToken, Int32)
- System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo.Rfc3161TimestampTokenInfo(Oid, Oid, ReadOnlyMemory<Byte>, ReadOnlyMemory<Byte>, DateTimeOffset, Nullable<Int64>, Boolean, Nullable<ReadOnlyMemory<Byte>>, Nullable<ReadOnlyMemory<Byte>>, X509ExtensionCollection)
- System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampTokenInfo, Int32)
- System.Security.Cryptography.Pkcs.SignerInfo.AddUnsignedAttribute(AsnEncodedData)
- System.Security.Cryptography.Pkcs.SignerInfo.RemoveUnsignedAttribute(AsnEncodedData)
- System.Security.Permissions.PrincipalPermission.Equals(Object)
- System.Security.Policy.UrlMembershipCondition.Equals(Object)
- DBDataPermission(DBDataPermission)
- DBDataPermission(DBDataPermissionAttribute)
- DBDataPermission(PermissionState, Boolean)
- System.Data.Common.DBDataPermission.FromXml(SecurityElement)
- System.Data.Common.DBDataPermission.Union(IPermission)