dllに関数をロードしようとしています。dllが読み込まれましたが、関数を呼び出した場所で例外が発生します
あいまいな一致が見つかりました
これがコードスニペットです。
Assembly dll = Assembly.LoadFrom(DLLPATH);
if (dll != null)
{
Type Tp = dll.GetType("ABCD.FooClass");
if (Tp != null)
{
Object obj = Activator.CreateInstance(Tp);
if (obj != null)
{
List = (List<String>)obj.GetType().GetMethod("Foo").Invoke(obj, null);
}
else
{
Console.WriteLine("obj is null");
}
}
Console.WriteLine("Type is null");
}
else
Console.WriteLine("Dll is not loaded");
Console.ReadKey();
私が呼び出しているメソッド(つまりFoo
)は、パラメーターを受け入れず、オーバーロードされたメソッドです。それは私が間違っている場所ですか、それとも他の場所ですか?
パラメータを受け入れないそのようなメソッドを呼び出す別の方法はありますか?ここに掲載されている解決策を試しましたが、機能していません。