Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LINQ:读取Excel文件,然后写入数据库_C#_Linq_Linq To Sql_Linq To Excel - Fatal编程技术网

C# LINQ:读取Excel文件,然后写入数据库

C# LINQ:读取Excel文件,然后写入数据库,c#,linq,linq-to-sql,linq-to-excel,C#,Linq,Linq To Sql,Linq To Excel,我使用LinqToExcel从Excel文件中获取行,然后使用LINQToSQL写入SQLServer。它确实在数据库中创建了记录,但具有空值。我想知道是否需要将Mac对象(linqtoexcel)映射到HSD_TELE_对象?自从它插入了记录后,我觉得我已经走得不远了。相关代码如下。提前谢谢 //LINQ var macs = from x in excel.Worksheet<Mac>(sheet) selec

我使用LinqToExcel从Excel文件中获取行,然后使用LINQToSQL写入SQLServer。它确实在数据库中创建了记录,但具有空值。我想知道是否需要将Mac对象(linqtoexcel)映射到HSD_TELE_对象?自从它插入了记录后,我觉得我已经走得不远了。相关代码如下。提前谢谢

        //LINQ
        var macs = from x in excel.Worksheet<Mac>(sheet)
                   select x;
        //ITERATE WITH LINQ RESULTS
        foreach (var x in macs)
        {
            HSD_TELE_INSTALL myRecord = new HSD_TELE_INSTALL();
            db.HSD_TELE_INSTALLs.InsertOnSubmit(myRecord);
            db.SubmitChanges();
        }

    public class Mac
    {
        public string REGION { get; set; }
        public string MACID { get; set; }
        public string HOUSEKEY { get; set; }
        public string HOUSENUM { get; set; }
        public string STREET { get; set; }
        public string UNIT { get; set; }
        public string ADDRESS2 { get; set; }
        public string COMMUNITY { get; set; }
        public string STATE { get; set; }
        public string ZIPCODE { get; set; }
        public string TECHNICIAN { get; set; }
        public string JOBNO { get; set; }
        public string JOBTYPE { get; set; }
        public string CLOSEDATE { get; set; }
        public string CLOSETIME { get; set; }
        public string COMMENTS { get; set; }
        public string MGT { get; set; }
        public string COMPLETIONCODE { get; set; }
        public string TCRSN { get; set; }
//LINQ
var macs=来自excel.工作表(工作表)中的x
选择x;
//使用LINQ结果进行迭代
foreach(macs中的var x)
{
HSD_TELE_INSTALL myRecord=新的HSD_TELE_INSTALL();
db.HSD_TELE_INSTALLs.InsertOnSubmit(我的记录);
db.SubmitChanges();
}
公共类Mac
{
公共字符串区域{get;set;}
公共字符串MACID{get;set;}
公共字符串HOUSEKEY{get;set;}
公共字符串HOUSENUM{get;set;}
公共字符串STREET{get;set;}
公共字符串单元{get;set;}
公共字符串地址2{get;set;}
公共字符串社区{get;set;}
公共字符串状态{get;set;}
公共字符串ZIPCODE{get;set;}
公共字符串{get;set;}
公共字符串JOBNO{get;set;}
公共字符串作业类型{get;set;}
公共字符串CLOSEDATE{get;set;}
公共字符串CLOSETIME{get;set;}
公共字符串注释{get;set;}
公共字符串管理{get;set;}
公共字符串完成代码{get;set;}
公共字符串TCRSN{get;set;}

您正在创建类型为
HSD\u TELE\u INSTALL
的新未初始化对象,然后将其提交给DB

您应该以某种方式从
x
初始化它。类似于:

HSD_TELE_INSTALL myRecord = new HSD_TELE_INSTALL(){SomeField=x.SomeField /*etc...*/ };
db.HSD_TELE_INSTALLs.InsertOnSubmit(myRecord);
db.SubmitChanges();