我有一个DataGrid
我充满了从DataSet
数据。 DataSet
从Excel文件中获取数据,其中OpenFileDialog
。我想将这些数据插入到我的SQL Server Express表中。我怎样才能做到这一点?数据集或数据网格,以SQL Server数据库表
代码与我填的是DataGrid
:
private void btnOpen_Click_1(object sender, RoutedEventArgs e)
{
OpenFileDialog openfile = new OpenFileDialog();
openfile.DefaultExt = ".xlsx";
openfile.Filter = "(.xlsx)|*.xlsx";
//openfile.ShowDialog();
var browsefile = openfile.ShowDialog();
if (browsefile == true)
{
txtFilePath.Text = openfile.FileName;
FileStream stream = File.Open(txtFilePath.Text, FileMode.Open, FileAccess.Read);
Excel.IExcelDataReader excelReader = Excel.ExcelReaderFactory.CreateOpenXmlReader(stream);
excelReader.IsFirstRowAsColumnNames = true;
DataSet resultexc = excelReader.AsDataSet();
dtGrid.ItemsSource = resultexc.Tables[0].DefaultView;
excelReader.Close();
}
}
我已经看到了一些教程,但我不理解他们。谢谢您的帮助!
您可以使用批量插入(确保表结构相同)请参阅:https://msdn.microsoft.com/en-us/library/ms188365.aspx – rach
检查.net [SqlBulkCopy类](https:/ /msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy(v=vs.110).aspx)如果它适合您的要求 – ASh