我想知道是否有一些内联短方法来创建实现接口(interface)的类。就像有匿名方法但有实现接口(interface)一样。
问题是:
interface iSomeInterface
{
void DoIt();
}
public void myMethod(iSomeInterface param)
{
...
}
我想这样使用它:
object.myMethod(new { override DoIt() { Console.WriteLine("yay"); } } : iSomeInterface);
有什么想法吗?
抱歉,以防重复。
请您参考如下方法:
抱歉,C# 中没有类的内联实现。只有Anonymous Types ,但它们不支持添加接口(interface)(例如 Can a C# anonymous class implement an interface? )(也不支持添加方法或字段......它们只支持属性)。
您可以使用System.Reflection.Emit
的方法在运行时生成一个类,但它又长又乏味。