数据源是一个DataTable,现在我们需要获取这个DataTable的第一行第一列的值。
先准备一个数据集,创建一个DataTable,并填充数据:
source code:
代码如下 | 复制代码 |
usingSystem; usingSystem.Collections.Generic; usingSystem.Data; usingSystem.Linq; usingSystem.Text; usingSystem.Threading.Tasks; usingInsus.NET.Models; namespaceInsus.NET.Entities { publicclassCustomerEntity { publicDataTable Customers() { DataTable dt =newDataTable(); dt.Columns.Add(newDataColumn("CustomerID",typeof(int))); dt.Columns.Add(newDataColumn("CustomerName",typeof(string))); dt.Columns.Add(newDataColumn("PID",typeof(string))); DataRow dr = dt.NewRow(); dr["CustomerID"] = 9; dr["CustomerName"] ="张三"; dr["PID"] ="123456789012"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["CustomerID"] = 10; dr["CustomerName"] ="李四"; dr["PID"] ="321245677812"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["CustomerID"] = 30; dr["CustomerName"] ="吴广"; dr["PID"] ="213445678912"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["CustomerID"] = 35; dr["CustomerName"] ="王维"; dr["PID"] ="334456789012"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["CustomerID"] = 36; dr["CustomerName"] ="赵勇"; dr["PID"] ="213445678912"; dt.Rows.Add(dr); returndt; } } } |
方法一,使用LINQ和Lambda:
上面是先获取第一行,再从获取的行中取得某一值。
方法二:
方法三:
或者:
方法四:
创建一个对象:
把DataTable转换为这个对象集合:
......
方法很多,你可以择优使用。