【发布时间】:2015-11-02 20:27:53
【问题描述】:
我目前正在使用以下方法将我的数据保存在数据库的多个表中,这些表是从 excel 文件中提取的。
public class Saver
{
public static int SaveCensusBatch(string key, ICollection<tbl_Life_Census> collection)
{
using (var db = new AuraEntities())
{
var entry = new tbl_Life_Master() { UUID = key, tbl_Life_Census = collection };
db.tbl_Life_Master.Add(entry);
db.SaveChanges();
return 1;
}
}
public static int SaveLifeData(string key2, ICollection<tbl_Life_General_Info> collection)
{
using (var db = new AuraEntities())
{
var entry = new tbl_Life_Master() { UUID = key2, tbl_Life_General_Info = collection };
db.tbl_Life_Master.Add(entry);
db.SaveChanges();
return 1;
}
}
public static T GetDBRecordByPK<T>(string key) where T : class
{
using (var db = new AuraEntities())
{
var t = db.Set<T>().Find(key);
return t;
}
}
}
以下是在 main 中调用它的代码:
foreach (var r in results)
{
r.UUID = key.ToString();
}
Saver.SaveCensusBatch(key.ToString(), results);
Saver.SaveLifeData(key.ToString(), results3);
var master = Saver.GetDBRecordByPK<tbl_Life_Master>(key.ToString());
请建议我如何在一个“使用块”和一个功能下完成所有操作,而不是实现多个功能。这是因为我必须同时向 20-30 个表中插入数据。
【问题讨论】:
-
非常不清楚。什么是
results,它从何而来?为什么设置r.UUID?什么是results3,它来自哪里?为什么你首先有这个Saver类?为什么不直接在最后的代码sn-p中保存一切呢? -
谢谢我也这样做了
标签: c# sql-server database entity-framework