Parameternamn har ändrats i .NET 6

Vissa parameternamn har ändrats så att de är konsekventa mellan referens - och implementeringssammansättningar. De flesta ändringarna finns i referenssammansättningarna, men en handfull finns i implementeringssammansättningarna.

Tidigare beteende

Vissa referensparameternamn skiljer sig från motsvarande parametrar i implementeringssammansättningen. Detta kan orsaka problem när namngivna argument och reflektion används.

Nytt beteende

I .NET 6 uppdaterades dessa felmatchade parameternamn för att vara konsekventa i referens- och implementeringssammansättningarna.

I följande tabell visas DE API:er och parameternamn som har ändrats. Dessutom har vissa parameternamn på Stream-derived-typer ändrats.

API (gränssnitt för programmering av applikationer) Gammalt parameternamn Nytt parameternamn Var ändrades
Attribute.GetCustomAttributes(MemberInfo, Type) type attributeType Referens- och implementeringssammansättning
Attribute.GetCustomAttributes(MemberInfo, Type, Boolean) type attributeType Referens- och implementeringssammansättning
Strings.InStr(Int32, String, String, CompareMethod) StartPos Start Referenssammansättning
SortedList<TKey,TValue>.ICollection.CopyTo(Array, Int32) arrayIndex index Referenssammansättning
Vector.Narrow source1, source2 low, high Referenssammansättning
Vector.Widen dest1, dest2 low, high Referenssammansättning
StreamWriter.WriteLine(ReadOnlySpan<Char>) value buffer Implementeringssammansättning
FileStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) array, numBytes buffer, count Implementeringssammansättning
FileStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) array, numBytes buffer, count Implementeringssammansättning
MemoryStream.Read(Span<Byte>) destination buffer Referenssammansättning
MemoryStream.ReadAsync(Memory<Byte>, CancellationToken) destination buffer Referenssammansättning
MemoryStream.Write(ReadOnlySpan<Byte>) source buffer Referenssammansättning
MemoryStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) source buffer Referenssammansättning
UnmanagedMemoryStream.Read(Span<Byte>) destination buffer Referenssammansättning
UnmanagedMemoryStream.Write(ReadOnlySpan<Byte>) source buffer Referenssammansättning
SignerInfo.AddUnsignedAttribute(AsnEncodedData) asnEncodedData unsignedAttribute Referenssammansättning
SignerInfo.RemoveUnsignedAttribute(AsnEncodedData) asnEncodedData unsignedAttribute Referenssammansättning
Rfc3161TimestampRequest.ProcessResponse(ReadOnlyMemory<Byte>, Int32) source responseBytes Implementeringssammansättning
Rfc3161TimestampToken.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampToken, Int32) source encodedBytes Implementeringssammansättning
Rfc3161TimestampTokenInfo.Rfc3161TimestampTokenInfo(Oid, Oid, ReadOnlyMemory<Byte>, ReadOnlyMemory<Byte>, DateTimeOffset, Nullable<Int64>, Boolean, Nullable<ReadOnlyMemory<Byte>>, Nullable<ReadOnlyMemory<Byte>>, X509ExtensionCollection) tsaName timestampAuthorityName Implementeringssammansättning
Rfc3161TimestampTokenInfo.TryDecode(ReadOnlyMemory<Byte>, Rfc3161TimestampTokenInfo, Int32) |
PrincipalPermission.Equals(Object) o obj Referenssammansättning
UrlMembershipCondition.Equals(Object) o obj Referenssammansättning
DBDataPermission(DBDataPermission) dataPermission permission Implementeringssammansättning
DBDataPermission(DBDataPermissionAttribute) attribute permissionAttribute Implementeringssammansättning
DBDataPermission(PermissionState, Boolean) blankPassword allowBlankPassword Implementeringssammansättning
DBDataPermission.FromXml(SecurityElement) elem securityElement Implementeringssammansättning
DBDataPermission.Union(IPermission) other target Implementeringssammansättning

Orsak till ändring

  • I de fall där referenssamlingens parameternamn ändrades bedömdes de nya namnen vara mer lämpliga eller läsbara och endast minimalt störande.
  • I de fall där namnen på körningsparametrar ändrades för att få konsekvens mellan plattformar eller med referenssammansättningar matchar körningsimplementeringen nu det offentliga API:et och dokumentationen för metoden.

Version lanserad

.NET 6

Om du stöter på ett kompilatorfel på grund av en ändring av parameternamnet uppdaterar du parameternamnet därefter.

Om du använder körningsreflektion för att inspektera metoder och var beroende av parameternamnen uppdaterar du koden för att använda de nya parameternamnen.

Berörda API:er

Se även