繁体   English   中英

从 c# 中的 DataTable 捕获数据

[英]Catch data from DataTable in c#

SqlCommand detailsCommand = new SqlCommand("SELECT bd.bookName, bd.authorName, bd.publishDate bc.description, bd.keyWords FROM bookCart as bc, bookDetails as bd WHERE bc.bookCode = bd.code");

DataTable detailsTable = book.showData(detailsCommand);

String BookName = detailsTable.Rows[0]["bookName"].ToString();
String AuthorName = detailsTable.Rows[1]["authorName"].ToString();
String PublishDate = detailsTable.Rows[2]["publishDate"].ToString();
String Describe = detailsTable.Rows[3]["describtion"].ToString();
String KeyWords = detailsTable.Rows[4]["keyWords"].ToString();

它在最后两行给了我一个IndexOutOfRangeException

我想这是因为描述在另一个表中,但我无法解决它,你能帮我解决这个问题吗?

接下来试试:

String BookName = detailsTable.Rows[0]["bookName"].ToString();
String AuthorName = detailsTable.Rows[0]["authorName"].ToString();
String PublishDate = detailsTable.Rows[0]["publishDate"].ToString();
String Describe = detailsTable.Rows[0]["description"].ToString();
String KeyWords = detailsTable.Rows[0]["keyWords"].ToString();

DataTable.Rows包含属于该表的行的集合,因此detailsTable.Rows[0]是第一行, detailsTable.Rows[1]是第二行,依此类推(在您的情况下,它们似乎有 3 个,所以你在第 4 个得到IndexOutOfRangeException

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM