2010-07-03 1 views
6

방금 ​​Resharper를 선택하고 필드를 속성으로 변환하는 작업을하고 있습니다. 이러한 속성을 보호하기를 원하지만 Resharper는 내게 그 옵션을 제공하고 싶지 않습니다. 대신 Protected Internal 옵션 만 있습니다. 이것은 나를 생각하고있다. 속성은 항상 '보호 된'것이 아니라 '내부적으로 보호 된'것이어야한다는 규칙이 있습니다. 아니면 resharper 사용법을 모르겠습니다. 무엇 이니?보호 된 내부 속성과 보호 된 속성 및 Resharper

업데이트 : Jetbrains에 문의하여 버그를 발견하고 버그를보고했습니다. Marc의 답변은 본질적으로 '보호 된 내부'의 사용법에 대해 정확하므로 진드기가납니다.

+0

수업을 공개로 선언 했습니까? 기본값은 internal입니다. 내부 클래스의 속성을 내부 클래스로 선언하는 것은 매우 어리 석다. 리팩터링을 통해 클래스를 공개 할 때 리팩터링 도구가 필요하다. 그게 당신이 데모 버전에서 소매 버전으로 갈 것이지만. –

+0

예 - 클래스가 public으로 선언되었습니다. 사실, 처음에는 아니었지만 클래스와 함께 테스트 프로젝트를 만들고 의도적으로 공개적으로 선언했습니다. 나는 여전히 같은 문제가있다. –

답변

4

현재 어떤 필드가 있습니까? public? 이미 속성을 감추고있는 다른 유형의 코드가 있다면 protected 일 경우 깨질 수 있습니다. 나는 resharper가 그것에 대해 어떻게 느끼는지 모르지만, 물건을 만드는 데 반드시 (또는 심지어 공통적 인) 것은 필요하지 않습니다. - protected은 합당한 선택이되어야합니다.

+0

필드는 처음부터 보호되며 코드는 방금 보호 된 속성으로 잘 컴파일됩니다. –