다음을 통해 공유


FromKeyedServicesAttribute.Key는 null일 수 있습니다.

FromKeyedServicesAttribute.Key 은 키가 없는 서비스 및 상속 시나리오에 대해 null 값을 지원하기 위해 null을 허용하지 object 않는 값에서 nullable object? 로 변경되었습니다.

도입된 버전

.NET 8

이전 동작

FromKeyedServicesAttribute.Key 이전에는 nullableobject이 아닌 것으로 선언되었습니다.

public object Key { get; }

새 동작

.NET 8 FromKeyedServicesAttribute.Key 부터 이제 nullable object?로 선언됩니다.

public object? Key { get; }

값은 null 키가 없고 매개 변수 형식만 서비스를 확인하는 데 사용됨을 나타냅니다. 이는 키가 없는 서비스에 대해 매개 변수를 확인해야 한다고 선언하는 명시적 방법이 필요한 종속성 주입 구현에 유용합니다. null 값은 또한 상속 시나리오에서 부모 범위로부터 키가 상속되어야 함을 나타내도록 함께 사용됩니다.

파괴적 변경 유형

이 변경 내용은 원본 호환성에 영향을 줄 수 있습니다.

변경 이유

키가 지정된 서비스에 대한 지원이 추가되어 매개 변수를 키가 없는 것으로 명시할 수 있게 되었습니다. 이 변경을 통해 개발자는 키 없이 매개 변수를 확인해야 하는 시기를 명시적으로 나타낼 수 있습니다. 이는 키와 키가 지정되지 않은 서비스가 모두 동일한 형식으로 등록된 시나리오에서 특히 유용합니다.

코드에서 FromKeyedServicesAttribute.Keynull 값을 처리하도록 조정합니다.

영향을 받는 API