立即导入 excel 到数据库添加日期
Import excel to database add date now
我有一个在 mvc 中将 excel 导入数据库的工作代码。在这些中,我有一个日期列,在导入后该列留空。我想要的是在导入时立即插入日期。
这是我目前的代码:
[HttpPost]
public ActionResult UploadCsv(HttpPostedFileBase attachmentcsv, Device device)
{
CsvFileDescription csvFileDescription = new CsvFileDescription
{
SeparatorChar = ',',
FirstLineHasColumnNames = true
};
CsvContext csvContext = new CsvContext();
StreamReader streamReader = new StreamReader(attachmentcsv.InputStream);
IEnumerable<Device> list = csvContext.Read<Device>(streamReader, csvFileDescription);
db.Devices.AddRange(list);
// code for insert Date now on my date column because it leaves blank
db.SaveChanges();
return RedirectToAction("Index","Devices");
}
我假设您的数据库 属性 名称是设备 class 中的 UploadDateTime。
List<Device> list = csvContext.Read<Device>(streamReader, csvFileDescription).ToList();
//Use below line of code to assign datetime to all object in list then add and save.
list.ForEach(x=> x.UploadDateTime = DateTime.Now);
db.Devices.AddRange(list);
// code for insert Date now on my date column because it leaves blank
db.SaveChanges();
编辑
如果list.ForEach
不起作用那么你可以这样使用
//or u can use foreach like below
foreach ( var item in list)
{
item.UploadDateTime = DateTime.Now;
}
我有一个在 mvc 中将 excel 导入数据库的工作代码。在这些中,我有一个日期列,在导入后该列留空。我想要的是在导入时立即插入日期。
这是我目前的代码:
[HttpPost]
public ActionResult UploadCsv(HttpPostedFileBase attachmentcsv, Device device)
{
CsvFileDescription csvFileDescription = new CsvFileDescription
{
SeparatorChar = ',',
FirstLineHasColumnNames = true
};
CsvContext csvContext = new CsvContext();
StreamReader streamReader = new StreamReader(attachmentcsv.InputStream);
IEnumerable<Device> list = csvContext.Read<Device>(streamReader, csvFileDescription);
db.Devices.AddRange(list);
// code for insert Date now on my date column because it leaves blank
db.SaveChanges();
return RedirectToAction("Index","Devices");
}
我假设您的数据库 属性 名称是设备 class 中的 UploadDateTime。
List<Device> list = csvContext.Read<Device>(streamReader, csvFileDescription).ToList();
//Use below line of code to assign datetime to all object in list then add and save.
list.ForEach(x=> x.UploadDateTime = DateTime.Now);
db.Devices.AddRange(list);
// code for insert Date now on my date column because it leaves blank
db.SaveChanges();
编辑
如果list.ForEach
不起作用那么你可以这样使用
//or u can use foreach like below
foreach ( var item in list)
{
item.UploadDateTime = DateTime.Now;
}