Я объявила DataGrid в представлении ASP.NET, и я бы хотел сгенерировать некоторый код C# для заполнения указанного DataGrid таблицей Excel (.xlsx). Вот код, который у меня есть:Excel Reader ASP.NET
<asp:DataGrid id="DataGrid1" runat="server"/>
<script language="C#" runat="server">
protected void Page_Load(object sender, EventArgs e)
{
string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\FileName.xlsx;Extended Properties=""Excel 12.0;HDR=YES;""";
// Create the connection object
OleDbConnection oledbConn = new OleDbConnection(connString);
try
{
// Open connection
oledbConn.Open();
// Create OleDbCommand object and select data from worksheet Sheet1
OleDbCommand cmd = new OleDbCommand("SELECT * FROM [sheetname$]", oledbConn);
// Create new OleDbDataAdapter
OleDbDataAdapter oleda = new OleDbDataAdapter();
oleda.SelectCommand = cmd;
// Create a DataSet which will hold the data extracted from the worksheet.
DataSet ds = new DataSet();
// Fill the DataSet from the data extracted from the worksheet.
oleda.Fill(ds, "Something");
// Bind the data to the GridView
DataGrid1.DataSource = ds.Tables[0].DefaultView;
DataGrid1.DataBind();
}
catch
{
}
finally
{
// Close connection
oledbConn.Close();
}
}
</script>
Когда я запускаю сайт, ничего действительно не происходит. Что дает?
Вы уверены, «Не получилось ошибку? - у вас нет кода в вашем блоке catch. – CResults
Чтобы использовать, наконец, блок try/catch/finally, вам не нужно указывать блок catch ... так что try/finally будет достаточным, и, следовательно, если возникнут какие-либо ошибки, они будут пузыряться до ... – ozczecho