Is it IQueryResult really IEnumerable<IQueryResult> ? I could expect, for example, that (for a single grid):
public interface IQueryResult<T> : IEnumerable<T> { }
or if you are trying to imagine multiple grids:
public interface IQueryResult<T> : IEnumerable<IEnumerable<T>> { /* */ }
:
public interface IQueryResult<T> {
IEnumerable<IEnumerable<T>> GetGrids();
}
, IEnumerable[<T>] foreach, LINQ ..