Avons-nous besoin d'installer Microsoft office de serveur pour les importer dans Excel Asp.net?
faire nous avons besoin d'installer Microsoft office server pour exécuter une application pour importer des données à partir de fichier excel en base de données mssql ?
des suggestions ou des idées ?
le code que j'ai utilisé
public partial class _Default : System.Web.UI.Page
{
private String strConnection = "Data Source=MYCBJ017550027;Initial Catalog=MySamplesDB;Integrated Security=True";
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSend_Click(object sender, EventArgs e)
{
string path = fileuploadExcel.PostedFile.FileName;
string excelConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;Persist Security Info=False";
OleDbConnection excelConnection =new OleDbConnection(excelConnectionString);
OleDbCommand cmd = new OleDbCommand("Select [ID],[Name],[Designation] from [Sheet1$]",excelConnection);
excelConnection.Open();
OleDbDataReader dReader;
dReader = cmd.ExecuteReader();
SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection);
sqlBulk.DestinationTableName = "Excel_table";
sqlBulk.WriteToServer(dReader);
excelConnection.Close();
}
}
- Est-ce quelque chose que vous essayez d'automatiser, ou tout simplement faire une fois? Si vous êtes à le faire une seule fois, enregistrez le fichier Excel au format CSV, puis l'importer dans SQL à l'aide de la PCA.
Vous devez vous connecter pour publier un commentaire.
Si vous lisez uniquement les fichiers xls puis utilisez
Microsoft.Jet.OLEDB.4.0
qui est intégré avec le votre .net framework.Si vous êtes la lecture de fichiers xlsx ensuite utiliser
Microsoft.ACE.OLEDB.12.0
. Les pilotes peuvent être téléchargés librement sur le site de Microsoft. Vous n'avez pas besoin d'installer Microsoft agent pour interoping.Utiliser la chaîne de connexion suivante
Télécharger les pilotes à partir d'ici
Consultez cette pour exemple
Comme @Romil dit, vous pouvez utiliser le .NET framework pour que:
Le problème avec le jet, est que vous devez toujours installer le fournisseur de données (même si c'est également gratuit) ou de l'office est installé pour que cela fonctionne. Si vous avez simplement besoin de lire un fichier excel il ya beaucoup de entièrement géré libs qui vont faire de la piste très bien sans avoir besoin d'installer quoi que ce soit.
J'ai énuméré quelques-uns ici. J'ai utilisé excelreader beaucoup avec de bons résultats.
http://excelreader.codeplex.com/
http://epplus.codeplex.com/
Excel reader semblent être la lumière de la documentation côté des choses. voici donc un exemple de comment l'utiliser