Ola estou tentando fazer um sistema de envio de email no qual e preciso importar um lista de cadastro de emails em Excel com extensão .xls pesquisei como fazer isso e tentei “ler o xls” mas não e da ERRO consegui abaixo o código do script :
To tentando ler e vincular ao DATAGRID mas meu objetivo e incluir no BD
Utilizei como se conectar a um base de banco de dados com o OLEDB.
E tem como utliizar o StreamReader ? e como faz ? ou Outra Classe ou componente que seja simples, facil, rápido e que tenho recursos para validar informações? Pois predento ler o campo e verificar se e campo de nome ou email Como faço essas validações?
Agradeço a todos que me ajudarem.
//============= ERRO NA EXECUCAO
System.Data.OleDb.OleDbException: Não foi possível encontrar ISAM instalável. em System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) em System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) em System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) em System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) em System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) em System.Data.OleDb.OleDbConnection.Open() em LerXls.Page_Load(Object sender, EventArgs e) na d:\web\localuser\crdancas\www\aspnettestes02\LerXls.aspx.cs:linha 53
Pergunta
leonecosta
Ola estou tentando fazer um sistema de envio de email no qual e preciso importar um lista de cadastro de emails em Excel com extensão .xls pesquisei como fazer isso e tentei “ler o xls” mas não e da ERRO consegui abaixo o código do script :
To tentando ler e vincular ao DATAGRID mas meu objetivo e incluir no BD
Utilizei como se conectar a um base de banco de dados com o OLEDB.
E tem como utliizar o StreamReader ? e como faz ? ou Outra Classe ou componente que seja simples, facil, rápido e que tenho recursos para validar informações? Pois predento ler o campo e verificar se e campo de nome ou email Como faço essas validações?
Agradeço a todos que me ajudarem.
//============= ERRO NA EXECUCAO
System.Data.OleDb.OleDbException: Não foi possível encontrar ISAM instalável. em System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) em System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) em System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) em System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) em System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) em System.Data.OleDb.OleDbConnection.Open() em LerXls.Page_Load(Object sender, EventArgs e) na d:\web\localuser\crdancas\www\aspnettestes02\LerXls.aspx.cs:linha 53
Provider= Microsoft.Jet.OleDb.4.0;data source= @d:\web\LocalUser\crdancas\www\aspnettestes02\arquivos\estoque.xls;Extended Properties=Excel 11.0;HDR=YES;
Select * From [estoque$]
//=============PAGINA ASPX
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="LerXls.aspx.cs" Inherits="LerXls" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="Form2" method="post" runat="server"> <asp:Label ID="lblSql1" Runat="server" /> <asp:DataGrid ID="dtgAgenda1" Runat="server" HeaderStyle-BackColor="Red" HeaderStyle-ForeColor="White" HeaderStyle-Font-Name="Verdana" HeaderStyle-Font-Size="10" ItemStyle-BackColor="Cyan" ItemStyle-Font-Name="Verdana" ItemStyle-Font-Size="10" CellPadding="4" GridLines="Both" /> </form> </body> </html>//============== CODIGO C#using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Data; using System.Data.OleDb; public partial class LerXls : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //string cnn = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\\preço.xls;Extended Properties='Excel 8.0;HDR=NO;'"; // string _conectionstring; // _conectionstring = @"Provider=Microsoft.Jet.OLEDB.4.0;"; // _conectionstring += String.Format("Data Source={0};", ConfigurationManager.AppSettings["caminhoExcel"]); // //_conectionstring += "Data Source=" + Server.mappath("~/adm/xls/preço.xls") + ";"; // _conectionstring += "Extended Properties='Excel 8.0;HDR=NO;'"; string MyProvider = "Microsoft.Jet.OleDb.4.0;"; //pode em ves de Provider colocar Network Library=DBMSSOCN" indica para a usar TCP/IP Q238949 string Mydatasource = "d:\\web\\LocalUser\\crdancas\\www\\aspnettestes02\\arquivos\\estoque.xls;"; //string usuario = "admin"; //string senha = "123"; string AdiconalParamStrConn = "Extended Properties=Excel 11.0;HDR=YES;"; string strConn = @"Provider= " + MyProvider + "" + "data source= @" + Mydatasource + "" + AdiconalParamStrConn; // SQL / Access / Oracle MySql // "User ID=Admin;" & _ // "Password=" // string strSql = "Select * From [Sheet1$]";//se o seu Excel for em português será Plan1 // string strSql = "Select * From [Plan1$]"; //string strSql = "Select * From [estoque$]"; string strSql = "Select * From [estoque$]"; lblSql1.Text = strConn + "<br>" + strSql; try { OleDbConnection cn = new OleDbConnection(strConn); cn.Open(); OleDbCommand cmd = new OleDbCommand(strSql, cn); OleDbDataAdapter da = new OleDbDataAdapter(cmd); DataTable dt = new DataTable(); da.Fill(dt); this.dtgAgenda1.DataSource = dt.DefaultView; this.dtgAgenda1.DataBind(); cn.Dispose(); } catch (Exception exc) { Response.Write(exc.ToString()); } //finally /// { // // } } }Editado por quintelabAdicionado BBCode
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.