我有一个DataView,它被过滤后只包含我需要的那些记录。最重要的是,我想获得Dataview中的第一条记录。
//appDV contains a bunch of records with different LOAN_STATUS. Here I'm filtering it by Approved
appDV.RowFilter = "LOAN_STATUS = 'Approved'";
appDV.Sort = "CREATE_TIME DESC";
// If more than one record, take the 1st record
appuser = new AppUserVO();
appuser.APPUSER_ID = Convert.ToInt32(appDV.Table.Rows[0]["APPUSER_ID"].ToString());
appuser.BankLenderId = appDV.Table.Rows[0]["BANK_LENDERID"].ToString().Trim();
AppList.Add(appuser);
return AppList;
上面的代码没有返回正确的Row ...因为它在应用过滤器之前返回DataView的Row。 我做错了什么?
答案 0 :(得分:0)
我认为你不需要.Table。打电话,而应该使用
appDV.Rows[0]["APPUSER_ID"].ToString();
答案 1 :(得分:0)
设置排序表达式和行过滤器后,必须调用DataView.ToTable()
答案 2 :(得分:-1)
从第一行获取列值:
string columnVal= appDV.ToTable().Rows[0]["COLUMN_NAME"].ToString();
您必须先使用.ToTable()
将DataView中检索到的值转换为DataTable。