我们有:
repository.Add<Customer>(c);
...
IQueryable<Customer> result1 = repository.All<Customer>();
Console.WriteLine( result1.Count() );
IQueryable<ICustomer> result2 = result1.Cast<ICustomer>();
Console.WriteLine( result2.Count() ); // error here
这会产生以下错误:
类型'System.Collections.Generic.IEnumerable`1 [Data.Customer]'的表达式不能用于方法'System.Linq.IQueryable`1 [Data.ICustomer]的'System.Linq.IQueryable'类型的参数] Cast [ICustomer]](System.Linq.IQueryable)'
是否可以通过接口工作?