가치 | |
---|---|
규칙 아이디 | ASP0003 |
범주 | 사용법 |
수정 사항이 문제를 해결하고 있는지 혹은 새로운 문제를 일으키지 않는지 여부 | 비손상 |
원인
경로 처리기 대리자는 [Bind]
속성이 있는 매개 변수를 포함합니다.
규칙 설명
경로 처리기 엔드포인트는 MVC 특성(예: [FromRoute]
[FromBody]
등)의 하위 집합만 지원합니다. 지원되지 않는 특성은 무시되고 예기치 않은 바인딩 동작이 발생합니다. 예를 들어 다음 코드는 분석기 경고를 생성합니다.
app.MapGet("/todos/{id}", ([Bind] int id) => new Todo { Id = id });
위반을 해결하는 방법
이 규칙 위반 문제를 해결하려면 엔드포인트에서 허용되는 모델 바인딩 특성 중 하나를 사용하는지 확인합니다.
app.MapGet("/todos/{id}", ([FromRoute] int id) => new Todo { Id = id });
경고를 표시하지 않는 경우
이 규칙의 경고를 숨기지 마세요. 모델 바인딩 설정이 잘못되면 런타임 시 매개 변수를 확인할 때 예기치 않은 동작이 발생할 수 있습니다.
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
ASP.NET Core