DoSomething()
メソッドが呼び出される基になるインターフェイスを特定するにはどうすればよいですか? 追加の質問: MyClass コンストラクターの基になるインターフェイスを既に決定できますか? インスタンス化時にわからないので、そうではないと思いますよね?
編集:明示的なインターフェイスの実装を探しているのではなく、基になるインターフェイスを決定する別の方法を探しています。
public interface ITest
{
void DoSomething();
//....more methods
}
public interface IDecoy
{
void DoSomething();
//...more methods
}
public class MyClass : ITest, IDecoy
{
public void DoSomething()
{
//Question: How can I determine the underlying interface that called this method?
//at one time it is ITest, at another IDecoy. How can I figure out which one at each time?
}
}
public class Test
{
public Test()
{
ITest myClassInstance1 = new MyClass();
IDecoy myClassInstance2 = new MyClass();
myClassInstance1.DoSomething();
myClassInstance2.DoSomething();
}
}