Entity Framework 批量更新
在开发过程中,有时可能会需要更新很多数据,几十、几百、几千条或者上万条数据。使用EF ,更新记录的标准思路是:1,获取要更新的数据,2,把数据状态标记成修改,3,提交变更。
这听起来没什么问题,但是当数据达到几十,几百条以上的时候,这就有性能问题了,当达到上千或者上万条数据,还是用这种办法,估计项目经理会拿程序员祭天了。我的一个解决思路是根据要删除的数据的关联性,生成更新脚本,然后执行。
/// <summary>
/// 获取表名
/// </summary>
/// <param name="type">实体类型</param>
/// <returns></returns>
private string getTableName(Type type)
{
string _type_name = String.Empty;
object _table_attr_obj = type.GetCustomAttributes(typeof(TableAttribute), false).FirstOrDefault();
if (_table_attr_obj != null) {
TableAttribute _table_attr = _table_attr_obj as TableAttribute;