2014-10-02 3 views
0

VS 2012 전문가가 애드온없이 클래스 생성자를 생성 할 수 있습니까?VS 2012에서 클래스 생성자를 생성 할 수 있습니까?

나는이 작업을 수행 할 수있는 옵션을 찾을 수없는 믿을 수 없어, 그리고 그것을 할 수 없다면, 그것은 진정한 음모 :

내 클래스 정의입니다 :

public class User 
{ 
    public int Id {get;set;} 
    public string Name {get;set;} 
} 

이제 생성자, toString() 메서드 등을 생성하는 바로 가기가 있습니까?

+0

같이 생성 하시겠습니까? – BradleyDotNET

+0

Re-sharper는 할 수 있지만 Visual Studio에는 그러한 옵션이 없습니다. –

+0

@BradleyDotNET 예, 질문하는 내용을 명확히하기 위해 질문을 업데이트했습니다. –

답변

0

snippets이 내장되어 있으며 직접 추가 할 수 있습니다. ctor가 생성자를 만들 것입니다. ToString에 대해 아무 것도 없다고 생각합니다. 다만 재정의를 입력하고 목록에서 선택하면 스텁이됩니다.

-1

"ctor"스 니펫은 매개 변수없이 생성자를 생성합니다. 그들을 얻으려면 불행히도 (무료 또는 무료) addons 사용해야합니다. 이 질문은 이미 논의되었습니다. 예를 들어 Shortcut for creating constructor with variables (C# VS2010)을보십시오.

벌거 벗은 Visual Studio에서 paramerized 생성자를 생성하는 직접적인 방법은 없다고 생각합니다.

편집 : "클래스에 현재 정의 된 속성 및 필드에 엄격하게 적용되는 마지막 문장"을 추가했을 것입니다. 그러나 예, Peter의 조언에 따라 매개 변수화 된 생성자를 생성 할 수 있습니다.

+1

다른 질문에 대한 자세한 내용 * 가능 *하며, 2010 년으로 거슬러 올라갑니다. http://msdn.microsoft.com/en-us/library/dd409796(v=vs.100).aspx –

+0

@PeterRitchie 동의하지 않습니다. "사용을 위해 생성"은 "생성자 자리 생성자"가 아닙니다. 매개 변수 순서와 이름이 클래스의 기존 소품 및 필드와 일치하지 않습니다! 도움이 될 수 있기 때문에 언급하는 것이 좋지만이 솔루션은 예를 들어 R # ctor 생성만큼 효율적입니다. – AFract

+0

질문에만 "생성 클래스 생성자"... –

3

기본 생성자가 필요한 경우 code snippet ctor이 있습니다.


하지만 당신은 코드를 쓰기에 다음 매개 변수로 생성자를 필요로하는 경우 : 두 개의 매개 변수와 생성자가 없기 때문에

User user = new User(2, "Name"); 

이것은 오류가 될 것입니다,하지만 당신은 파란색 아래를 얻을 것이다 마우스를 User에 올리면 new User에 표시됩니다. 그런 다음

public class User 
{ 
    private int p1; 
    private string p2; 

    public User(int p1, string p2) 
    { 
     // TODO: Complete member initialization 
     this.p1 = p1; 
     this.p2 = p2; 
    } 
    public int Id { get; set; } 
    public string Name { get; set; } 
} 

: 같은 필드가 당신에게 생성자를 줄 것이다

enter image description here

: 그 클릭하거나 User에 커서를 놓고 Ctrl + .을 누르면 그것은 당신에게 같은 생성자를 생성 할 수있는 옵션을 제공합니다 p1, p2을 제거하고 Id, Name을 가리키고 생성자에서 매개 변수의 이름을 바꾸어야합니다. 그게 아마도 비주얼 스튜디오로 할 수있는 최선의 방법 일 것입니다.

참조 : Generate From Usage - MSDN(@ 피터 리치 덕분에)


generating not only constructor하지만, 다른 매우 도움이 코드에 대한 더 나은 옵션이 다시 선명하게 설치를 고려.

+0

또한 http://msdn.microsoft.com/en-us/library/dd409796(v=vs.100) .aspx –

+0

@ PeterRitchie, 매우 유용한 링크입니다. – Habib

+0

고맙지 만 vnet의 디자인이 실제로 코드화하지 않는 것 같습니다. 나는 단지 생성자를 생성하기 위해 그 라인을 작성하고 싶지 않다. 물론 그 옵션도 좋지만, 클래스를 생성하는 동안 전체 생성자를 생성하고 싶습니다! –

관련 문제