Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.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# 如何创建excel工作表并将列表中的数据插入其中?_C#_.net_Excel_Asp.net Mvc 4_Export To Excel - Fatal编程技术网

C# 如何创建excel工作表并将列表中的数据插入其中?

C# 如何创建excel工作表并将列表中的数据插入其中?,c#,.net,excel,asp.net-mvc-4,export-to-excel,C#,.net,Excel,Asp.net Mvc 4,Export To Excel,我有一个包含URL集合的excel工作表,我正在从excel中逐个读取这些URL,并将URL传递给另一个服务以检索一些数据。 现在,我有一节这样的课 internal class Record { public string Id { get; set; } public string url { get; set; } public string Name { get; set; } public string Age

我有一个包含URL集合的excel工作表,我正在从excel中逐个读取这些URL,并将URL传递给另一个服务以检索一些数据。 现在,我有一节这样的课

 internal class Record
    {
        public string Id { get; set; }
        public string url { get; set; }
        public string Name { get; set; }
        public string Age { get; set; }
    }
现在,我创建了一个类的列表
listrec=newlist()
从服务中我得到了大约100条记录,它在列表中rec。
我想要实现的是创建另一个列名称为Id、Url、名称、年龄的excel工作表
并将rec中的数据逐行传输到excel工作表中。(这与上面链接中的操作相反)excel应该是这样的

Id              Url                                                                                  Name    Age
1       http://www.sample.com/term=100898731%5Buid%5D&cmd=DetailsSearch&report=xml&format=text        Tom     10
2       http://www.sample.com/term==101120693%5Buid%5D&cmd=DetailsSearch&report=xml&format=text       Jerry   11
3       http://www.sample.com/term==100893225%5Buid%5D&cmd=DetailsSearch&report=xml&format=text       Jose    10 

如何实现相同的功能???

您是否考虑过使用

使用(电子表格文档电子表格=电子表格文档。创建(
System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory,电子表格名称),
电子表格(文档类型。工作簿))
{
//创建工作簿
电子表格。AddWorkbookPart();
电子表格.WorkbookPart.Workbook=新工作簿();//创建工作表
电子表格.WorkbookPart.AddNewPart();
电子表格.WorkbookPart.WorksheetParts.First().Worksheet=新工作表();
//创建图纸数据
电子表格.WorkbookPart.WorksheetParts.First().Worksheet.AppendChild(新的SheetData());
//创建行
电子表格.WorkbookPart.WorksheetParts.First().Worksheet.First().AppendChild(新行());
//使用数据创建单元格
电子表格.WorkbookPart.WorksheetParts.First().Worksheet.First().First().AppendChild(
新单元格(){CellValue=new CellValue(“101”)};
//保存工作表
电子表格.WorkbookPart.WorksheetParts.First().Worksheet.Save();
//创建工作表到工作簿的关系
电子表格.WorkbookPart.Workbook.AppendChild(新工作表());
电子表格.WorkbookPart.Workbook.GetFirstChild().AppendChild(新工作表())
{
Id=电子表格.WorkbookPart.GetIdOfPart(电子表格.WorkbookPart.WorksheetParts.First()),
SheetId=1,
Name=“测试”
});
电子表格.WorkbookPart.Workbook.Save();
}
在列表上循环并附加更多单元格

using (SpreadsheetDocument spreadSheet = SpreadsheetDocument.Create(
    System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, SPREADSHEET_NAME),
    SpreadsheetDocumentType.Workbook))
{
    // create the workbook
    spreadSheet.AddWorkbookPart();
    spreadSheet.WorkbookPart.Workbook = new Workbook ();     // create the worksheet
    spreadSheet.WorkbookPart.AddNewPart<WorksheetPart>();
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet = new Worksheet();

    // create sheet data
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.AppendChild(new SheetData());

    // create row
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.First().AppendChild(new Row());

    // create cell with data
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.First().First().AppendChild(          
          new Cell() { CellValue = new CellValue("101") });

    // save worksheet
    spreadSheet.WorkbookPart.WorksheetParts.First().Worksheet.Save();

    // create the worksheet to workbook relation
    spreadSheet.WorkbookPart.Workbook.AppendChild(new Sheets());
    spreadSheet.WorkbookPart.Workbook.GetFirstChild<Sheets>().AppendChild(new Sheet()
        {
            Id = spreadSheet.WorkbookPart.GetIdOfPart(spreadSheet.WorkbookPart.WorksheetParts.First()),
            SheetId = 1,
            Name = "test"
        });

    spreadSheet.WorkbookPart.Workbook.Save();
}