And*_*sch 4 c# linq vb.net asp.net linq-to-sql
我正在使用a LinqDataSource来填充GridViewASP.NET中的基本内容.用户可以过滤结果,所以我使用了几个WhereParameters和Where内部LinqDataSource.
我的客户端已请求将筛选结果导出到文件的选项.很容易将数据传输到文件中,但我宁愿不重写代码隐藏中的所有where子句.我只想提取完整的结果集,最好是使用已经配置的结果LinqDataSource.
当使用LinqDataSource's OnSelect方法时,e.Result有我之后的数据,但是我GridView PageSize的设置为20,这意味着LinqDataSource(正确地说)只获取前20个记录.
无论如何都要掌握整个数据集?
好的,找到解决方案由AspGuy,Aref Karimi提供.
以下将使用LinqDataSource配置检索所有记录.甜蜜如!
IDataSource source = (IDataSource)myLinqDataSource;
LinqDataSourceView view = source.GetView("DefaultView") as LinqDataSourceView;
DataSourceSelectArguments args = new DataSourceSelectArguments();
args.RetrieveTotalRowCount = view.CanRetrieveTotalRowCount;
args.SortExpression = view.OrderBy;
List<MyObject> objects = view.Select(args) as List<MyObjects>;
Run Code Online (Sandbox Code Playgroud)