옵션이 많아서 모든 다른 페이지/탭에 로컬 옵션이있을 수 있습니다. 어쩌면 10-15 페이지 탭을 열어 볼 수 있습니다. 전역 기본값을 표시하는 방법을 구현해야하며 모든 탭의 일관된 값을 유지해야합니다. WPF 앱의 model/viewmodel 부분을 작업하고 있습니다.매개 변수로 속성? C#
대략 20 번 이상 동일한 코드를 자르고 과거의 속성 이름을 변경해야하기 때문에보다 우아한 방법을 찾고 싶습니다. 어쩌면 이것은 다이나믹스가 해결하는 문제 일지 모르지만, 지금 당장은 이것이 잘못되고 고통 스러울 것입니다. 여기
내 현재 솔루션의 예입니다public class Foo
{
private bool fooVar1;
private bool fooVar2;
//lots of these
private decimal fooVar23;
public Foo()
{
}
public bool FooVar1
{
get;
set;
}
//you get the picture...
}
public class FooMonitor
{
private Foo defaultFoo;
private List<Foo> allFoos;
public FooMonitor(Foo DefaultFoo)
{
defaultFoo = DefaultFoo;
}
public void AddFoo(Foo newFoo)
{
allFoos.Add(newFoo);
}
public void AddFoo(Foo oldFoo)
{
allFoos.Remove(oldFoo);
}
public bool IsFooVar1Consistent
{
get
{
Foo[] tempFoos = allFoos.ToArray();
foreach (Foo tempFoo in tempFoos)
{
if (tempFoo.FooVar1 != defaultFoo.FooVar1) return false;
}
return true;
}
}
}
아니면 내가 완전히 잘못이 문제에 접근하고있다. 이 글을 쓰고 있는데 (2000 줄 정도의 코드를 작성한 후) WPF 자체가 Dictionary lookup을 구현하는 것을 읽었을 때, 부모에게 크롤링하여 속성이 존재하고 값이 무엇인지 알아 보는 방법을 생각하고 있습니다. .
다른 패턴에 대한 전체 코드를 다시 작성하는 것이 부족하다고 생각합니다. –