.NET 6에서 매개 변수 이름이 변경됨
일부 매개 변수 이름이 참조 어셈블리와 구현 어셈블리 간에 일관되도록 변경되었습니다. 대부분의 변경 내용은 참조 어셈블리에 있지만 몇 가지는 구현 어셈블리에 있습니다.
이전 동작
참조 어셈블리의 일부 매개 변수 이름은 구현 어셈블리의 해당 매개 변수와 달랐습니다. 이로 인해 명명된 인수와 리플렉션을 사용하는 동안 문제가 발생할 수 있습니다.
새 동작
.NET 6에서는 이 일치하지 않는 매개 변수 이름이 참조 및 구현 어셈블리에서 일관되도록 업데이트되었습니다.
다음 표에는 변경된 API 및 매개 변수 이름이 나와 있습니다. 또한 Stream
파생 형식 일부 매개 변수 이름이 변경되었습니다.
변경 이유
- 참조 어셈블리 매개 변수 이름이 변경된 경우 새 이름은 더 적절하거나 쉽게 읽을 수 있고 중단이 최소화되는 것으로 간주되었습니다.
- 플랫폼 간 또는 참조 어셈블리에서 일관성을 얻기 위해 런타임 매개 변수 이름이 변경된 경우 런타임 구현은 이제 메서드의 퍼블릭 API 및 설명서와 일치합니다.
도입된 버전
.NET 6
권장 작업
매개 변수 이름 변경으로 인해 컴파일러 오류가 발생하는 경우 매개 변수 이름을 적절하게 업데이트합니다.
런타임 리플렉션을 사용하여 메서드를 검사하고 매개 변수 이름에 대한 종속성을 사용한 경우 새 매개 변수 이름을 사용하도록 코드를 업데이트합니다.
영향을 받는 API
- 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)
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET