小编Bja*_*kes的帖子

使用Action <object>作为方法输入

我的情况是我希望有一个方法可以采用其他方法作为输入.

输入方法将始终具有单个对象作为输入,但对象是不同的.

这或多或少是我需要做的:

public static void takeAnything(Action<object> inputFunc)
{
    Console.WriteLine(inputFunc.Method.Name);
}

public static void test1(MyOwnObject input){
    // Do stuff with input object
}

public static void test2(MyOtherOwnObject input){
    // Do stuff with input object
}

public static void startSystem(){
    takeAnything(test1);
    takeAnything(test2);
}
Run Code Online (Sandbox Code Playgroud)

在这个虚拟案例中会写出:

test1
test2
Run Code Online (Sandbox Code Playgroud)

我只是不能让这个工作,所以任何帮助将非常感激.

编辑

我不知道这是否可行,也许不是,但重要的是呼叫只是takeAnything(test1),不是takeAnything<MyOwnObject>(test1)或其他任何东西.

c#

1
推荐指数
1
解决办法
266
查看次数

标签 统计

c# ×1