You can use the framework impromptu interface to wrap an anonymous type in an interface.
You'd just return an IEnumerable
and at the end of your Linq use .AllActLike();
this works because it calls the anonymous property using the DLR with a context of the assembly that declared the anonymous type.