Noms de paramètres modifiés dans .NET 6

Certains noms de paramètres ont été modifiés pour être cohérents entre les assemblys de référence et d’implémentation. La plupart des modifications se trouvent dans les assemblys de référence, mais quelques-uns se trouvent dans les assemblys d’implémentation.

Comportement précédent

Certains noms de paramètres d’assembly de référence étaient différents de leurs paramètres correspondants dans l’assembly d’implémentation. Cela peut entraîner des problèmes lors de l’utilisation des arguments nommés et de la réflexion.

Nouveau comportement

Dans .NET 6, ces noms de paramètres incompatibles ont été mis à jour pour être cohérents entre les assemblys de référence et d’implémentation.

Le tableau suivant présente les API et les noms de paramètres qui ont changé. En outre, certains noms de paramètres sur Streamles types dérivés ont été modifiés.

API Ancien nom du paramètre Nouveau nom du paramètre Où la modification a été apportée
Attribute.GetCustomAttributes(MemberInfo, Type) type attributeType Assembly de référence et d’implémentation
Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) type attributeType Assembly de référence et d’implémentation
Strings.InStr(Int32, String, String, CompareMethod) StartPos Start Assembly de référence
SortedList<TKey,TValue>.ICollection.CopyTo(Array, Int32) arrayIndex index Assembly de référence
Vector.Narrow source1, source2 low, high Assembly de référence
Vector.Widen dest1, dest2 low, high Assembly de référence
StreamWriter.WriteLine(ReadOnlySpan<Char>) value buffer Assembly d’implémentation
FileStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) array, numBytes buffer, count Assembly d’implémentation
FileStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) array, numBytes buffer, count Assembly d’implémentation
MemoryStream.Read(Span<Byte>) destination buffer Assembly de référence
MemoryStream.ReadAsync(Memory<Byte>, CancellationToken) destination buffer Assembly de référence
MemoryStream.Write(ReadOnlySpan<Byte>) source buffer Assembly de référence
MemoryStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) source buffer Assembly de référence
UnmanagedMemoryStream.Read(Span<Byte>) destination buffer Assembly de référence
UnmanagedMemoryStream.Write(ReadOnlySpan<Byte>) source buffer Assembly de référence
SignerInfo.AddUnsignedAttribute(AsnEncodedData) asnEncodedData unsignedAttribute Assembly de référence
SignerInfo.RemoveUnsignedAttribute(AsnEncodedData) asnEncodedData unsignedAttribute Assembly de référence
Rfc3161TimestampRequest.ProcessResponse(ReadOnlyMemory<Byte>, Int32) source responseBytes Assembly d’implémentation
Rfc3161TimestampToken.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampToken, Int32) source encodedBytes Assembly d’implémentation
Rfc3161TimestampTokenInfo.Rfc3161TimestampTokenInfo(Oid, Oid, ReadOnlyMemory<Byte>, ReadOnlyMemory<Byte>, DateTimeOffset, Nullable<Int64>, Boolean, Nullable<ReadOnlyMemory<Byte>>, Nullable<ReadOnlyMemory<Byte>>, X509ExtensionCollection) tsaName timestampAuthorityName Assembly d’implémentation
Rfc3161TimestampTokenInfo.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampTokenInfo, Int32) |
PrincipalPermission.Equals(Object) o obj Assembly de référence
UrlMembershipCondition.Equals(Object) o obj Assembly de référence
DBDataPermission(DBDataPermission) dataPermission permission Assembly d’implémentation
DBDataPermission(DBDataPermissionAttribute) attribute permissionAttribute Assembly d’implémentation
DBDataPermission(PermissionState, Boolean) blankPassword allowBlankPassword Assembly d’implémentation
DBDataPermission.FromXml(SecurityElement) elem securityElement Assembly d’implémentation
DBDataPermission.Union(IPermission) other target Assembly d’implémentation

Raison du changement

  • Dans les cas où les noms des paramètres de l’assembly de référence ont été modifiés, les nouveaux noms ont été jugés plus appropriés ou lisibles et ont été réduits au minimum.
  • Dans les cas où les noms des paramètres d’exécution ont été modifiés pour obtenir une cohérence entre les plateformes ou avec des assemblys de référence, l’implémentation du runtime correspond désormais à l’API publique et à la documentation de la méthode.

Version introduite

.NET 6

Si vous rencontrez une erreur du compilateur en raison d’un changement de nom de paramètre, mettez à jour le nom du paramètre en conséquence.

Si vous utilisez la réflexion au moment de l’exécution pour inspecter les méthodes et que vous avez pris une dépendance sur les noms de paramètres, mettez à jour le code pour utiliser les nouveaux noms de paramètres.

API affectées

Voir aussi