"No se encontro ninguna implementacion del patron de consulta para el tipo de origen datatable. No se encontro 'Join'." en el dt1 del query
Mi codigo actual es el siguiente:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Telefonos
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
DataTable query = new DataTable();
private void btnSelect1_Click(object sender, EventArgs e)
{
try
{
OpenFileDialog openfiledialog1 = new OpenFileDialog();
openfiledialog1.Filter = "Excel Files | *.xlsx; *.xls; *.xlsm";
if (openfiledialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.tBox1.Text = openfiledialog1.FileName;
}
string constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + tBox1.Text + ";Extended Properties = \"Excel 12.0; HDR=YES;\" ; ";
OleDbConnection con = new OleDbConnection(constr);
con.Open();
dropdown_sheet1.DataSource = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
dropdown_sheet1.DisplayMember = "TABLE_NAME";
dropdown_sheet1.ValueMember = "TABLE_NAME";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnLoad1_Click(object sender, EventArgs e)
{
try
{
string constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + tBox1.Text + ";Extended Properties = \"Excel 12.0; HDR=YES;\" ; ";
OleDbConnection con = new OleDbConnection(constr);
OleDbDataAdapter sda = new OleDbDataAdapter("Select * From [" + dropdown_sheet1.SelectedValue + "]", con);
sda.Fill(dt1);
dataGridView1.DataSource = dt1;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnSelect2_Click(object sender, EventArgs e)
{
try
{
OpenFileDialog openfiledialog2 = new OpenFileDialog();
openfiledialog2.Filter = "Excel Files | *.xlsx; *.xls; *.xlsm";
if (openfiledialog2.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.tBox2.Text = openfiledialog2.FileName;
}
string constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + tBox2.Text + ";Extended Properties = \"Excel 12.0; HDR=YES;\" ; ";
OleDbConnection con = new OleDbConnection(constr);
con.Open();
dropdown_sheet2.DataSource = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
dropdown_sheet2.DisplayMember = "TABLE_NAME";
dropdown_sheet2.ValueMember = "TABLE_NAME";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnLoad2_Click(object sender, EventArgs e)
{
try
{
string constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + tBox2.Text + ";Extended Properties = \"Excel 12.0; HDR=YES;\" ; ";
OleDbConnection con = new OleDbConnection(constr);
OleDbDataAdapter sda = new OleDbDataAdapter("Select * From [" + dropdown_sheet2.SelectedValue + "]", con);
sda.Fill(dt2);
dataGridView2.DataSource = dt2;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnIntersect1_Click(object sender, EventArgs e)
{
try
{
query = from row1 in dt1
join row2 in dt2 on row1.TELEFONO equals row2.TELEFONO
select new
{
row1.FOLIO_FACTURA,
row1.CONCEPTO,
row1.FECHA_PUBLICACION,
row1.PERIODO,
row1.TELEFONO,
row1.MONTO,
row1.FECHA_MOVIMIENTO
};
dataGridView3.DataSource = query;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
Cualquier detalle o recomendación se agradece
