2011-06-20 5 views

答えて

0

質問はなぜですか?あなたのアーキテクチャに応じて、いくつかのアプローチがあります:

まず、あなたのメインページシングルトンを作ることです。現実にはメインページが1つしかないので意味がありますが、シングルトンは気に入らず、コンポーネントが結合され、単体テストが難しくなります。

また、MainPageのインターフェイスをクラスに渡すこともできます。インターフェースを通過するだけでは、あまり問題なくユニットテストを行うことができます。このようなもの:

public interface IMainView 
{ 
    void MethodOnMainPage(); 
} 

public class MainPage : IMainView 
{ 
} 

public class MyClass 
{ 
    private IMainView _view; 

    public MyClass(IMainView view) 
    { 
     _view = view; 
    } 

    private void SomeEventHappened() 
    { 
     _view.MethodOnMainPage(); 
    } 
} 
関連する問題