LINQ コンセプトの使用中に問題に直面しています。以下では、2 つのデータテーブルを比較しています。1 つはデータベースで埋められ、もう 1 つは Excel ファイルです。
問題は、2 つの「tempdt」の間に結合を適用すると、オブジェクトのキャスト エラーを促進する double 値が含まれている場合です。戻り値の型を string から double に変更することはできません。現在は double であり、将来的には英数字になる可能性があるため、将来的には任意のデータ型になる可能性があります。
var commonRows = from r1 in dt.AsEnumerable()
join r2 in tempdt.AsEnumerable()
on r1.Field<string>(0) equals r2.Field<string>(4)
select r2;
if (commonRows.Any())
{
abcdefgh = commonRows.Count();
dt123 = commonRows.CopyToDataTable();
// ring the ghanta of gutlu
}
例外: タイプ 'System.Double' のオブジェクトをタイプ 'System.String' にキャストできません。