Esempio n. 1
0
 /// <summary>
 /// 批量进行保存
 /// </summary>
 /// <param name="dataTable">数据表</param>
 /// <returns>影响行数</returns>
 public override int BatchSave(DataTable dataTable)
 {
     int returnValue = 0;
     BaseFolderEntity folderEntity = new BaseFolderEntity();
     foreach (DataRow dataRow in dataTable.Rows)
     {
         // 删除状态
         if (dataRow.RowState == DataRowState.Deleted)
         {
             string id = dataRow[BaseFolderEntity.FieldId, DataRowVersion.Original].ToString();
             if (id.Length > 0)
             {
                 returnValue += this.DeleteEntity(id);
             }
         }
         // 被修改过
         if (dataRow.RowState == DataRowState.Modified)
         {
             string id = dataRow[BaseFolderEntity.FieldId, DataRowVersion.Original].ToString();
             if (id.Length > 0)
             {
                 folderEntity.GetFrom(dataRow);
                 returnValue += this.UpdateEntity(folderEntity);
             }
         }
         // 添加状态
         if (dataRow.RowState == DataRowState.Added)
         {
             folderEntity.GetFrom(dataRow);
             returnValue += this.AddEntity(folderEntity).Length > 0 ? 1 : 0;
         }
         if (dataRow.RowState == DataRowState.Unchanged)
         {
             continue;
         }
         if (dataRow.RowState == DataRowState.Detached)
         {
             continue;
         }
     }
     return returnValue;
 }