Это длинный снимок, но у меня есть странная ситуация с кодированием, когда я хочу возможность создавать анонимные классы "на лету", но иметь возможность передавать их как параметр методу, ожидающему интерфейс или подкласс. Другими словами, я хотел бы сделать что-то вроде этого:
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);
Есть ли способ сделать это иначе, чем использовать именованный класс?