注意:我知道 C# 有匿名类型和内部类型,但它们的作用与旧的 java 匿名内部类截然不同。
假设我有一个接口:
public interface Foo<T>
{
int Fizz(string a);
T Buzz(object o);
void Crackle();
}
那里有什么东西(ReSharper 宏等)可以让我生成一个实现类,该类将履行 java 样式 AIC 的角色(即,允许我定义内联功能)。IE
public class FooAIC<T> : Foo<T>
{
public Func<string, int> Fizz;
public Func<object, T> Buzz;
public Action Crackle;
int Foo<T>.Fizz(string a)
{
return Fizz(a);
}
T Foo<T>.Buzz(object o)
{
return Buzz(o);
}
void Foo<T>.Crackle()
{
Crackle();
}
}
(我还没有详细考虑过这一点。所以我想可以创建一个更智能的类,其中包含只读成员注入、调用时的空检查、适用于抽象类等,但这应该传达我的总体思路想达到)
有人知道可以做到这一点的东西吗?或者,除此之外,推荐最轻松的方式来做这样的事情——这在 T4 引擎中是否可行?