다음을 통해 공유


CA2253: 명명된 자리 표시자는 숫자 값이 아니어야 합니다.

속성
규칙 ID CA2253
제목 명명된 자리 표시자는 숫자 값이 아니어야 합니다.
범주 사용 현황
수정 사항이 주요 변경인지 여부 주요 변경 아님
.NET 10에서 기본적으로 사용하도록 설정 제안 사항

원인

메시지 자리 표시자는 숫자 문자로만 구성됩니다.

규칙 설명

로깅 메시지 템플릿의 명명된 자리 표시자는 숫자 문자로만 구성하면 안 됩니다.

위반 문제를 해결하는 방법

숫자 자리 표시자의 이름을 바꿉니다.

사용 예제는 메서드를 참조하세요 LoggerExtensions.LogInformation .

Example

public class UserService
{
    private readonly ILogger<UserService> _logger;

    public UserService(ILogger<UserService> logger)
    {
        _logger = logger;
    }

    public void Add(string firstName, string lastName)
    {
        // This code violates the rule.
        _logger.LogInformation("Adding user with first name {0} and last name {1}", firstName, lastName);

        // This code satisfies the rule.
        _logger.LogInformation("Adding user with first name {FirstName} and last name {LastName}", firstName, lastName);

        // ...
    }
}

오류를 표시하지 않는 경우

이 규칙에서는 경고를 표시해야 합니다.

추가 정보