다음과 같이 중괄호가 한 줄 코드 블록을 둘러싸는 데 사용되지 않을 때 C # 코드를 수정하도록 ReSharper를 구성 할 수 있습니까?
if (blnSomeCondition)
DoSomething(); // complain
if (blnSomeOtherCondition)
{
DoSomethingElse(); // don't complain
}
감사
답변
답변
Ryan이 맞습니다 (그러나 그의 링크는 R # 2.0 도움말을 참조 함). 구체적인 절차는 다음과 같습니다.
- ReSharper> 옵션> 언어> C #> 서식 스타일> 중괄호 레이아웃으로 이동합니다.
- “”if-else “문의 중괄호”를 “여러 줄에 중괄호 사용”으로 설정합니다.
- 변경 사항을 저장 한 후 다시 형식화 할 범위를 선택합니다 (코드 선택, 파일, 폴더, 프로젝트, 솔루션 등 원하는 모든 것이 가능).
- ReSharper> 도구> 정리 코드를 선택합니다.
- 이익.
코드 정리는 다양한 작업을 수행하며 코드 형식화와 관련이있을뿐만 아니라 ( http://www.jetbrains.com/resharper/webhelp/Code_Cleanup__Index.html 참조 ) 기능을 현명하게 사용합니다.
답변
Gorohoroh의 솔루션은 비슷하지만 “여러 줄에 중괄호 사용”을 선택하는 대신 “중괄호 추가”를 선택하여 한 줄 시나리오에서 중괄호를 추가해야했습니다. 그리고 모든 시나리오를 파악하기 위해 “Force Braces”아래의 6 개 드롭 다운 모두에서 설정해야했습니다.
제가 정말로 바랬던 것은 규칙 위반시 노란색 경고 또는 빨간색 오류를 수행하도록 ReSharper를 설정할 수있는 것이었지만 그렇게 할 방법을 찾지 못했습니다. 당신 말이 맞아요, Gorohoroh, Cleanup Code는 많은 일을합니다. 저는 한 번에 하나씩 규칙 위반을 확인하고 수정할 수있는 옵션을 갖고 싶습니다.
당신의 도움을 주셔서 감사합니다!
답변
대한 ReSharper에서 2016년 2월 2일 .
정리를 위해 프로필을 편집해야합니다. 적절한 항목은 “if-else”, “for”, “foreach”, “while”, “do-while”, “using”의 단일 문에 대한 중괄호 추가 / 제거라고 합니다. 이 항목은 C # => 코드 스타일 항목 에서 찾을 수 있습니다 .
항목을 선택하면 중괄호가 추가됩니다. 선택하지 않으면 중괄호가 제거됩니다.
참고 : 지금은 추가가 작동하지 않습니다 (이유를 모르겠습니다. ReSharper의 너무 최신 버전 일 수 있음). 그러나 언급 된 항목의 선택을 취소하면 단일 문 주위에 존재하는 중괄호가 제거되지 않습니다.
UPD : 문제가 해결되었습니다.이 게시물의 처음 두 댓글을 참조하세요.
답변
답변
다른 사람이 시간을 절약하는 데 도움이된다면, 내 회사의 한 컴퓨터에서 세르게이의 조언을 따르는 것은 그의 게시물의 질이 우수 함에도 불구하고 충분하지 않았습니다.
관련 설정 (VS2017, R # 2019, 둘 다 최신 상태)에서 R # 측의 이러한 설정은 이미 좋았지 만 Visual Studio 옵션에서도 수정해야했습니다.
- 옵션 창에서 텍스트 편집기-> C #-> 코드 스타일-> 서식-> 일반으로 이동합니다. .
- ” 형식화하는 동안 추가 코드 정리 수행 “및 ” 단일 행 제어문에 대한 중괄호 추가 / 제거 “를 선택하십시오.