인수가 null이 아닌지 확인하기 위해 유효성 검사를 추가하기 위해 코드 분석기 및 수정 공급자를 작성했습니다. 여러 메서드에서 잘 작동하지만 모든 매개 변수를 한 번에 확인할 수는 없습니다. 분석기는 아직 확인되지 않은 모든 매개 변수를 표시하지만 한 번에 하나의 매개 변수에 대해서만 수정할 수 있습니다.
세부 정보 : 변경 불가능한 노드 문제가 아니며 필요한 경우 코드에서 using 문을 추가합니다.
분석기에서 모든 매개 변수에 대한 진단을 등록합니다.
Diagnostic diagnostic = Diagnostic.Create(
Rule,
parameter.GetLocation(),
null,
prop.ToImmutableDictionary(),
parameter.Identifier.Text);
수정 공급자에서 컨텍스트에서 첫 번째 진단을 받고 이에 대한 코드 수정을 등록합니다.
내가 뭔가 잘못하고 있으므로 수정 공급자에서 여러 진단을받지 못할 수도 있습니다.
여러 번 수정하는 올바른 방법은 무엇입니까? 진단의 키 / ID가 동일해야합니까? 또는 진단을 직접 등록하여 모든 매개 변수에 대해 불만을 제기해야합니다.
희망적으로 좋은 해결책을 찾았습니다.
분석기는 모든 유효하지 않은 매개 변수에 대한 진단을보고하므로 특정 매개 변수에 대한 유효성 검사를 생성 할 수 있습니다. 그 후 분석기는 모든 유효하지 않은 매개 변수에 대해 하나 이상의 진단을보고하고 메소드 식별자를 위치로 설정합니다.
두 가지 유형의 진단을 모두 해결하는 데 동일한 코드 수정 공급자가 사용됩니다. 특정 매개 변수 1 (단일 매개 변수 데이터를 전송 함) 및 모든 매개 변수 1 (매개 변수 데이터 콜렉션을 전송).
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다