2011-12-20 3 views
3

MVP 패턴의 발표자에 Silverlight보기를 바인딩하는 코드가 있습니다.클리너 속성 선언

모델 :

public bool MyBoolean 
{ 
    get { return _myThingy.MyBoolean; } 
    set { _myThingy.MyBoolean = value; } 
} 

발표자 :

public bool MyBoolean 
{ 
    get { return _model.MyBoolean; } 
    set { _model.MyBoolean = value; } 
} 

은 분명히 발표자 멀리 할 수있는이 특별한 경우, 또 다시이 일에 정말로 긴 운동이다 이 예제에서는 이 아니고, 속성이 모두 이와 같지 않으며, 우리의 코딩 표준에서 Model, View, 및 모든 창/페이지/사용자 컨트롤에 대한 발표자.

모델 :

public bool MyBoolean -> _myThingy.MyBoolean; 

발표자 :

public bool MyBoolean -> _model.MyBoolean; 

->이고 여기

내 진짜 문제는 정말 이런 일을 할 수 있도록하고 싶습니다이다 "bind property operator"또는 유사한 이름 - 코드의 첫 번째 비트에 대한 본질적으로 구문적인 설탕. 이미 이런 것이 있습니까? 그렇지 않다면 내가하고있는 일을하는 더 깨끗한 방법이 있습니까?

답변

5

이미 있나요? 그렇지 않다면 내가하고있는 일을하는 더 깨끗한 방법이 있습니까?

아니요. 코드의 관점에서 볼 때 가장 좋은 옵션 일 수 있습니다. C#은 모든 기능에서 이러한 유형의 기능을 제공하지 않습니다.

그러나 도구를 사용하면이 작업을보다 간단하게 만들 수 있습니다. 예를 들어 Resharper 템플릿을 사용하면 이러한 템플릿 중 하나를 쉽게 만들 수 있습니다. 코드가 동일 할 것이지만 ...

,

ptprop{TAB}bool{TAB}MyBoolean{Tab}_model{Enter} 

이 개발 노력을 단순화하는 것입니다 : 두 번째 단지 (키워드로 "ptprop"가정)와 같은 입력 뭔가를 필요로 템플릿으로 전환 될 수있다