使用entity framework导入和导出数据,以便使用asp.net mvc

我想使用entity framework使用ASP.NET MVC导入和导出Excel文件数据到SQL服务器。

我发现的所有代码解释说,不使用entity framework。 那么我该怎么做呢?

EPPlus是一个使用Open Office Xml格式(xlsx)读取和写入Excel 2007/2010文件的.NET库。 这里是在ASP.net MVC中使用这个libarary的示例代码。

public FileContentResult Download() { var fileDownloadName = String.Format("FileName.xlsx"); const string contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; // Pass your ef data to method ExcelPackage package = GenerateExcelFile(_db.Contexts.ToList()); var fsr = new FileContentResult(package.GetAsByteArray(), contentType); fsr.FileDownloadName = fileDownloadName; return fsr; } private static ExcelPackage GenerateExcelFile(IEnumerable<Context> datasource) { ExcelPackage pck = new ExcelPackage(); //Create the worksheet ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Sheet 1"); // Sets Headers ws.Cells[1, 1].Value = "Column 1"; ws.Cells[1, 2].Value = "Column 2"; ws.Cells[1, 3].Value = "Column 3"; // Inserts Data for (int i = 0; i < datasource.Count(); i++) { ws.Cells[i + 2, 1].Value = datasource.ElementAt(i).Serial; ws.Cells[i + 2, 2].Value = datasource.ElementAt(i).WarrantyStart; ws.Cells[i + 2, 3].Value = datasource.ElementAt(i).WarrantyEnd; } // Format Header of Table using (ExcelRange rng = ws.Cells["A1:C1"]) { rng.Style.Font.Bold = true; rng.Style.Fill.PatternType = ExcelFillStyle.Solid; //Set Pattern for the background to Solid rng.Style.Fill.BackgroundColor.SetColor(Color.Gold); //Set color to DarkGray rng.Style.Font.Color.SetColor(Color.Black); } return pck; } 

并在您的视图中插入此链接,它会下载您的文件。

 @Html.ActionLink("Download Data as Excel", "Download"); 

同样的,你可以从excel中导入数据, 这里是一个开始的例子。