私はこの一日中立ち往生しています....それを解決できる人に私の愛!!!!同じデータセット内の2つのテーブル間の関係からテーブルまたはデータセットを作成
だから、(に
バーコード、説明、倉庫などの数量
とExcel表の列を含み(ds.Tables [ "アクセス"])で2つのテーブル
アクセス表がありますds.Tables [「エクセル」])
バーコードの列が含まれ、quantiyはなどを命じたがF2、F4、F8
という名前は、どのように私は(最終のDataTable/DataSetを得るか、私が上に.DataSourceできるものDataGridView)とExcelとAccessがバーコード上で一致していますか? ??
OleDbConnection conAccess = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\PROGRAMMING.LAB\\geekx_recent.mdb");
OleDbDataAdapter daAccess = new OleDbDataAdapter("Select Barcode AS BARCODE, quantity AS QTY_WH From Stock", conAccess);
DataSet dsAll = new DataSet();
daAccess.Fill(dsAll, "Access");
OleDbConnection conExcel = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\PROGRAMMING.LAB\\order.xlsx;Extended Properties = Excel 12.0 Xml");
OleDbDataAdapter daExcel = new OleDbDataAdapter("SELECT F2 AS BARCODE, F8 AS ORDER_CUST FROM [phil$] WHERE ISNUMERIC(F8)",conExcel);
daExcel.Fill(dsAll, "Excel");
DataRelation dr = dsAll.Relations.Add("Excel_Access", dsAll.Tables["Excel"].Columns["BARCODE"], dsAll.Tables["Access"].Columns["BARCODE"], false);
DataTable dtExcel = dsAll.Tables["Excel"];
DataTable dtAccess = dsAll.Tables["Access"];
DataTable dtAll = new DataTable();
var query = from ex in dtExcel.AsEnumerable()
join ac in dtAccess.AsEnumerable()
on ex.Field<string>("BARCODE") equals ac.Field<string>("BARCODE")
select new
{
Order = ex.Field<string>("ORDER_CUST"),
Stock = ac.Field<string>("QTY_WH"),
Barcode = ex.Field<string>("BARCODE")
};
foreach (var q in query)
{
dtAll.Rows.Add(q.Barcode, q.Stock, q.Order);
}
dataGridView1.DataSource = dtAll;
これは、型「System.InvalidCastExceptionの」の
未処理の例外がSystem.Data.DataSetExtensions.dll で発生しました追加情報を返します:型のオブジェクトをキャストすることができません「System.Double」「システムを入力します。文字列 '。 新しいブロックを選択してください
アイデアは誰ですか?
使用LINQのは、二つのDataTableに登録しよう。 2つのデータセットをdatagridview.DataSource = ds.Talbe [0](また1)に入れて、列のヘッダー名を確認することをお勧めします。結合はヘッダー名を使用して2つのテーブルを結合します。 – jdweng
こんにちはjdwngので、私は幸運との結合を使用して試してみましたか、使用して/使用しないについてenumerablesを使用していないか、私に正しいキャストを使用しないについて叫んでいますか?何かご意見は? – KAPA