2

以下の LinqtoExcel マッピングの概念を使用して、Excel ファイルから膨大なデータ セットを解析できます。

私の要件: スプレッドシートの特定のセルに DataLists オプションが指定されている場合に LinqtoExcel マッピングを行う方法。以下に示すように、マッピング シナリオを行うことは可能ですか?

excel.AddMapping<RESULT_DBML>(x => x.Period_Name, "Period_Name" OR "Prd_Date");

ここに画像の説明を入力

私のC#コード:

class Reference
{
    public string Period_Name { get; set; }
    public string Start_Time { get; set; }
    public string End_Time { get; set; }
}

private static bool import_excelres(string _path)
    {
        bool parse_status = false;
        List<string> files = System.IO.Directory.GetFiles(@_path, "*.xlsx", SearchOption.AllDirectories).ToList<string>();

        DataClasses1DataContext dbContext = new DataClasses1DataContext();
        ExcelQueryFactory excel = new ExcelQueryFactory();

        excel.FileName = files.ElementAt(0);


        // Mapping Excel Columns to Database Table Results with Table Column Names
        excel.AddMapping<RESULT_DBML>(x => x.Period_Name, "Period_Name");
        excel.AddMapping<RESULT_DBML>(x => x.Start_Time, "Start_Time");
        excel.AddMapping<RESULT_DBML>(x => x.End_Time, "End_Time");

        var results = (from x in excel.Worksheet<Reference>("Sheet1")
                          select new RESULT_DBML
                          {
                              Period_Name = x.Period_Name,
                              Start_Time = x.Start_Time,
                              End_Time = x.End_Time,

                          });

        dbContext.RESULT_DBMLs.InsertAllOnSubmit(results);
        dbContext.SubmitChanges();
        return parse_status;
    }
4

0 に答える 0