私はこのようなことをしようとしていますが、方法がわからず、ちょっと迷っています
foreach ( var type in cmdTypes )
{
if ( type.Name.ToLowerInvariant() == Name.ToLowerInvariant() )
{
return (Commands)type.execute(cmdParams);//<==Incorrect
}
else
{
//Command not found!
return 1;
}
}
このクラスは の派生クラスですCommands
。これは基本クラスです:
abstract class Commands
{
internal abstract int execute(object[] myParameters );
internal string Name;
public Commands()
{
Name=this.GetType().Name;
}
}
execute()
から派生したすべてのクラスを呼び出せるようにしたいのですが、Commands
これを達成するにはどうすればよいですか?
更新:アーカイブしたいものを説明したほうがよいと思います。クラス名をパラメーターとして渡すときに、クラスにメソッドを呼び出させようとしています。