如何在导入Excel中select以哪个行开头的数据库

当我从Excel导入数据到数据库的代码从第一行开始,它应该从第二行开始

MaamoonKhalidIssueEntities db = new MaamoonKhalidIssueEntities(); DataTable table = result.Tables[1]; foreach (DataRow dr in table.Rows) { string input = Convert.ToString(dr[0]); var reg = new Regex(pattern2, RegexOptions.IgnoreCase); Match match = reg.Match(input); string input2 = Convert.ToString(dr[1]); var reg2 = new Regex(pattern, RegexOptions.IgnoreCase); Match match2 = reg2.Match(input2); if (match.Success && match2.Success) { Person addtable = new Person() { ncode = Convert.ToString(dr[0]), nname = Convert.ToString(dr[1]) }; if (ValidateNewPerson(addtable, db)) db.People.Add(addtable); } } db.SaveChanges(); excelreader.Close(); stream.Close(); 

这里我从第一行开始,第一行是一个标题行,所以它不应该进入数据库,我怎么能跳过它?

您可以遍历table.Rows列表并从索引1开始,而不是0:

 for (int i = 1; i < table.Rows.Count; i++) { DataRow dr = table.Rows[i]; string input = Convert.ToString(dr[0]); var reg = new Regex(pattern2, RegexOptions.IgnoreCase); Match match = reg.Match(input); string input2 = Convert.ToString(dr[1]); var reg2 = new Regex(pattern, RegexOptions.IgnoreCase); Match match2 = reg2.Match(input2); if (match.Success && match2.Success) { Person addtable = new Person() { ncode = Convert.ToString(dr[0]), nname = Convert.ToString(dr[1]) }; if (ValidateNewPerson(addtable, db)) db.People.Add(addtable); } }