这是一个很长的过程,但我有一个有趣的编码情况,我希望能够即时创建匿名类,但能够将它们作为参数传递给期望接口或子类的方法。换句话说,我希望能够做到这样的事情:是否有可能让一个匿名类继承另一个类?
public class MyBase { ... }
public void Foo(MyBase something)
{
...
}
...
var q = db.SomeTable.Select(t =>
new : MyBase // yeah, I know I can't do this...
{
t.Field1,
t.Field2,
});
foreach (var item in q)
Foo(item);
除了使用命名的类有什么办法吗?
你*可以*使用'dynamic'作为参数类型而不是'MyBase',但是我强烈建议不要这样做,即使是从多个地方被调用的远程机会。 – Dirk