저는 잠시 동안이 문제로 어려움을 겪었습니다. 지금까지 MVVM 프로젝트의 백업 데이터를 싱글 톤 클래스로 유지했지만 문제가 발생했습니다. 내 백업 데이터를 중앙 집중화되고 쉽게 액세스 할 수있는 위치에 보관할 수있는 좋은 방법을 찾고 있지만 정적으로 만들고 싶지 않고 이러한 시스템을 구현하는 데 문제가 있습니다.MVVM - 백업 데이터 처리
예를 들어, GameContainer
이라는 클래스가 생성 된 모든 객체 중 ObservableCollection
을 보유하고 있습니다. 나는이 ObservableCollection
과 내 코드 전체에 포함 된 객체 인스턴스에 액세스 할 수 있기를 원하며, 더 좋은 방법이 없다면 이런 종류의 구조를 유지하고 싶습니다. 더 좋은 방법이 있다면, 나는 그것에 대해 배우고 싶습니다.
저는 프로그램이 시작될 때 각 객체의 인스턴스를 10 개 만들고 GameContainer
에 ObservableCollection
을 추가하는 메서드를 initializer 클래스에 있습니다. 이제 메인 화면의 ViewModel에 이러한 객체에 대한 액세스가 필요합니다. GameContainer
을 정적으로 만들지 않고 내 ViewModel이 필요한 데이터에 어떻게 액세스 할 수 있습니까?
IOC가 필요한 상황입니까? 그렇다면 어떻게 적절하게 구현할 수 있습니까?
모든 제안이나 조언을 주시면 감사하겠습니다. 나는 최근에 여기서 멈춰 섰고, 나는 내 프로젝트를 계속 진행할 수 있기를 바랍니다.
감사합니다. 나는 네가해야 할 말을보기를 고대한다.
'GameContainer'를 생성자를 통해 뷰 모델에 전달 하시겠습니까? – McGarnagle
왜 싱글 톤 클래스가 문제를 일으키는 지 설명 할 수 있습니까? Paul의 권장대로 정적 접근자를 사용하여 싱글 톤을 만드는 것처럼 들리는 문제에 대한 설명을 기반으로하는 것이 최선의 방법입니다. – Sauce
LINQ를 사용하여 OLinq라는 확장을 통해 UI에 데이터를 필터링하고 바인딩하는 데 문제가 있습니다. 이 확장 기능은 메모리 누수를 일으킬지라도 정적 인 것과 명백하게 작동하지 않습니다. 나는 뭔가를 더 잘 찾을 수 없다면 총알을 물고 ICollectionView를 사용하여 데이터를 필터링 할 때라고 생각합니다. –