| 가치 | |
|---|---|
| 규칙 아이디 | ASP0016 |
| 범주 | Usage |
| 수정 사항이 문제를 해결하고 있는지 혹은 새로운 문제를 일으키지 않는지 여부 | Non-breaking |
원인
RequestDelegate을 생성하는 데 사용되는 메서드는 Task<T>을 반환합니다.
RequestDelegate 는 이 값을 삭제합니다.
규칙 설명
Delegate을(를) 예상하는 API에 RequestDelegate으로 값을 반환하지 마세요. 예를 들어, 다음 샘플은 Task의 string 값이 삭제되는 Task<string>를 반환합니다.
var app = WebApplication.Create();
app.Use(next =>
{
return new RequestDelegate((HttpContext context) =>
{
return Task.FromResult(""hello world"");
});
});
위반을 해결하는 방법
이 규칙 위반 문제를 해결하려면 반환 형식을 제네릭 Task 이 아닌 형식으로 변경하거나 대리자가 경로 처리기 Delegate 인 경우 반환 값이 응답에 기록되도록 캐스팅합니다.
경고를 표시하지 않는 경우
이 규칙의 경고를 무시하지 마세요.
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
ASP.NET Core