У меня возникают проблемы с выводами С# и общего типа. Я хочу написать метод, который получает метод, имеющий любой тип, но компилятор не может определить типы метода, который я передаю. Компилятор всегда жалуется на сообщение
Ожидаемый метод с '??? TestFunc (???,???) '
Здесь тестовый файл.
using System;
public class Example
{
private interface ITest
{
int TestFunc(string str, int i);
}
private class Test : ITest
{
public int TestFunc(string str, int i) { return 0; }
}
public static void Main()
{
ITest t = new Test();
DoWork(t.TestFunc);
}
public static void DoWork<T1, T2, TResult>(Func<T1, T2, TResult> func)
{
}
}
Может кто-нибудь объяснить мне, в чем проблема?