/// <summary>
        /// 添加
        /// </summary>
        /// <param name="itemDetailsEntity">实体</param>
        /// <param name="statusCode">返回状态码</param>
        /// <returns>主键</returns>
        public string Add(BaseItemDetailsEntity itemDetailsEntity, out string statusCode)
        {
            string returnValue = string.Empty;
            // 检查编号是否重复
            //if (!String.IsNullOrEmpty(itemDetailsEntity.ItemCode))
            //{
            //    if (this.Exists(BaseItemDetailsEntity.FieldItemCode, itemDetailsEntity.ItemCode))
            //    {
            //        // 编号已重复
            //        statusCode = StatusCode.ErrorCodeExist.ToString();
            //        return returnValue;
            //    }
            //}
            //if (!String.IsNullOrEmpty(itemDetailsEntity.ItemName))
            //{
            //    // 检查名称是否重复
            //    if (this.Exists(BaseItemDetailsEntity.FieldItemName, itemDetailsEntity.ItemName))
            //    {
            //        // 名称已重复
            //        statusCode = StatusCode.ErrorFullNameExist.ToString();
            //        return returnValue;
            //    }
            //}

            //if (!String.IsNullOrEmpty(itemDetailsEntity.ItemValue))
            //{
            //    // 检查值是否重复
            //    if (this.Exists(BaseItemDetailsEntity.FieldItemValue, itemDetailsEntity.ItemValue))
            //    {
            //        // 值已重复
            //        statusCode = StatusCode.ErrorValueExist.ToString();
            //        return returnValue;
            //    }
            //}

            List<KeyValuePair<string, object>> parameters = new List<KeyValuePair<string, object>>();
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldItemCode, itemDetailsEntity.ItemCode));
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldItemName, itemDetailsEntity.ItemName));
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldDeletionStateCode, 0));

            if (this.Exists(parameters))
            {
                // 名称已重复
                statusCode = StatusCode.Exist.ToString();
                return returnValue;
            }
            // 运行成功
            returnValue = this.AddEntity(itemDetailsEntity);
            statusCode = StatusCode.OKAdd.ToString();
            return returnValue;
        }
        /// <summary>
        /// 添加实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="dataTable">数据表</param>
        /// <param name="statusCode">返回状态码</param>
        /// <param name="statusMessage">返回状态信息</param>
        /// <returns>数据表</returns>
        public string Add(BaseUserInfo userInfo, string tableName, BaseItemDetailsEntity itemDetailsEntity, out string statusCode, out string statusMessage)
        {
            // 写入调试信息
            #if (DEBUG)
            int milliStart = BaseBusinessLogic.StartDebug(userInfo, MethodBase.GetCurrentMethod());
            #endif

            // 加强安全验证防止未授权匿名调用
            #if (!DEBUG)
                LogOnService.UserIsLogOn(userInfo);
            #endif

            string returnValue = string.Empty;
            statusCode = string.Empty;
            statusMessage = string.Empty;
            using (IDbHelper dbHelper = DbHelperFactory.GetHelper(BaseSystemInfo.UserCenterDbType))
            {
                try
                {
                    dbHelper.Open(UserCenterDbConnection);
                    BaseItemDetailsManager itemDetailsManager = new BaseItemDetailsManager(dbHelper, userInfo, tableName);
                    // 调用方法,并且返回运行结果
                    returnValue = itemDetailsManager.Add(itemDetailsEntity, out statusCode);
                    statusMessage = itemDetailsManager.GetStateMessage(statusCode);
                    BaseLogManager.Instance.Add(dbHelper, userInfo, this.serviceName, AppMessage.ItemDetailsService_Add, MethodBase.GetCurrentMethod());
                }
                catch (Exception ex)
                {
                    BaseExceptionManager.LogException(dbHelper, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    dbHelper.Close();
                }
            }

            // 写入调试信息
            #if (DEBUG)
            BaseBusinessLogic.EndDebug(MethodBase.GetCurrentMethod(), milliStart);
            #endif

            return returnValue;
        }
        /// <summary>
        /// 获取实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主键</param>
        /// <returns>数据表</returns>
        public BaseItemDetailsEntity GetEntityByCode(BaseUserInfo userInfo, string tableName, string code)
        {
            // 写入调试信息
            #if (DEBUG)
                int milliStart = BaseBusinessLogic.StartDebug(userInfo, MethodBase.GetCurrentMethod());
            #endif

            // 加强安全验证防止未授权匿名调用
            #if (!DEBUG)
                LogOnService.UserIsLogOn(userInfo);
            #endif

            BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity();
            using (IDbHelper dbHelper = DbHelperFactory.GetHelper(BaseSystemInfo.UserCenterDbType))
            {
                try
                {
                    dbHelper.Open(UserCenterDbConnection);
                    BaseItemDetailsManager itemDetailsManager = new BaseItemDetailsManager(dbHelper, userInfo, tableName);
                    DataTable datatable = itemDetailsManager.GetDataTable(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldItemCode, code), BaseItemDetailsEntity.FieldSortCode);
                    if((datatable != null)&&(datatable.Rows.Count>0))
                    {
                        itemDetailsEntity =  itemDetailsEntity.GetFrom(datatable.Rows[0]);
                    }
                    BaseLogManager.Instance.Add(dbHelper, userInfo, this.serviceName, AppMessage.ItemDetailsService_GetEntity, MethodBase.GetCurrentMethod());
                }
                catch (Exception ex)
                {
                    BaseExceptionManager.LogException(dbHelper, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    dbHelper.Close();
                }
            }

            // 写入调试信息
            #if (DEBUG)
                BaseBusinessLogic.EndDebug(MethodBase.GetCurrentMethod(), milliStart);
            #endif

            return itemDetailsEntity;
        }
 /// <summary>
 /// 获取父节点
 /// </summary>
 /// <param name="dataTable">数据表</param>
 private void GetParentId(DataTable dataTable)
 {
     BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity(dataTable);
     this.SelectedId         = itemDetailsEntity.Id.ToString();
     this.SelectedFullName   = itemDetailsEntity.ItemName;
     this.txtFullName.Text   = itemDetailsEntity.ItemName;
     this.ParentId           = itemDetailsEntity.ParentId.ToString();
 }
 private void grdItemDetails_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
 {
     // 当前记录是否允许被删除
     BaseItemDetailsEntity ItemDetailsEntity = new BaseItemDetailsEntity();
     DataRow dataRow = BaseBusinessLogic.GetDataRow(this.DTItemDetails, this.EntityId);
     ItemDetailsEntity.GetFrom(dataRow);
     // 判断是否允许删除
     if (ItemDetailsEntity.AllowDelete == 0)
     {
         MessageBox.Show(AppMessage.MSG0017, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Question);
         e.Cancel = true;
     }
     else
     {
         if (MessageBox.Show(AppMessage.MSG0015, AppMessage.MSG0000, MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
         {
             e.Cancel = true;
         }
         else
         {
             // 删除数据
             DotNetService.Instance.ItemDetailsService.Delete(UserInfo, this.TargetTable, this.EntityId);
         }
     }
 }
 /// <summary>
 /// 检查批量输入的有效性
 /// </summary>
 /// <returns>有效</returns>
 private bool CheckInputBatchSave()
 {
     int selectedCount = 0;
     bool returnValue = false;
     foreach (DataRow dataRow in this.DTItemDetails.Rows)
     {
         // 这里判断数据的各种状态
         if (dataRow.RowState == DataRowState.Modified)
         {
             BaseItemDetailsEntity itemDetails = new BaseItemDetailsEntity(dataRow);
             if (itemDetails.AllowEdit.Equals("0"))
             {
                 if ((dataRow[BaseItemDetailsEntity.FieldItemName, DataRowVersion.Original] != dataRow[BaseItemDetailsEntity.FieldItemName, DataRowVersion.Current]) || (dataRow[BaseItemDetailsEntity.FieldItemValue, DataRowVersion.Original]) != dataRow[BaseItemDetailsEntity.FieldItemValue, DataRowVersion.Current] || (dataRow[BaseItemDetailsEntity.FieldDescription, DataRowVersion.Original] != dataRow[BaseItemDetailsEntity.FieldDescription, DataRowVersion.Current]))
                 {
                     returnValue = false;
                     MessageBox.Show(AppMessage.Format(AppMessage.MSG0020, AppMessage.MSG9978), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                     // 这里需要直接返回了,不再进行输入交验了。
                     return returnValue;
                 }
             }
             selectedCount++;
         }
         if (dataRow.RowState == DataRowState.Deleted)
         {
             selectedCount++;
         }
     }
     // 有记录被选中了
     returnValue = selectedCount > 0;
     if (!returnValue)
     {
         MessageBox.Show(AppMessage.MSG0004, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     return returnValue;
 }
        /// <summary>
        /// 检查批量删除的输入的有效性
        /// </summary>
        /// <returns>允许批量删除</returns>
        private bool CheckInputBatchDelete()
        {
            bool returnValue = false;
            int selectedCount = 0;
            BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity();

            foreach (DataGridViewRow dgvRow in grdItemDetails.Rows)
            {
                DataRow dataRow = (dgvRow.DataBoundItem as DataRowView).Row;
                if (dataRow.RowState != DataRowState.Deleted)
                {
                    if ((System.Boolean)(dgvRow.Cells["colSelected"].Value ?? false))
                    {
                        // 是否允许删除
                        itemDetailsEntity.GetFrom(dataRow);
                        if (itemDetailsEntity.AllowDelete == 0)
                        {
                            returnValue = false;
                            MessageBox.Show(AppMessage.Format(AppMessage.MSG0018, itemDetailsEntity.ItemName), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                            // 这里需要直接返回了,不再进行输入交验了。
                            return returnValue;
                        }
                        else
                        {
                            selectedCount++;
                        }
                    }
                }
            }

            //foreach (DataRowView dataRowView in this.DTItemDetails.DefaultView)
            //{
            //    DataRow dataRow = dataRowView.Row;
            //    if (dataRow.RowState != DataRowState.Deleted)
            //    {
            //        if (dataRow["colSelected"].ToString() == true.ToString())
            //        {
            //            // 是否允许删除
            //            itemDetailsEntity.GetFrom(dataRow);
            //            if (itemDetailsEntity.AllowDelete == 0)
            //            {
            //                returnValue = false;
            //                MessageBox.Show(AppMessage.Format(AppMessage.MSG0018, itemDetailsEntity.ItemName), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
            //                // 这里需要直接返回了,不再进行输入交验了。
            //                return returnValue;
            //            }
            //            else
            //            {
            //                selectedCount++;
            //            }
            //        }
            //    }
            //}
            // 有记录被选中了
            returnValue = selectedCount > 0;
            if (!returnValue)
            {
                MessageBox.Show(AppMessage.MSG0024, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            return returnValue;
        }
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="itemDetailsEntity">实体</param>
        /// <param name="statusCode">返回状态码</param>
        /// <returns>影响行数</returns>
        public int Update(BaseItemDetailsEntity itemDetailsEntity, out string statusCode)
        {
            int returnValue = 0;
            // 检查是否已被其他人修改
            //if (DbLogic.IsModifed(DbHelper, this.CurrentTableName, itemDetailsEntity.Id, itemDetailsEntity.ModifiedUserId, itemDetailsEntity.ModifiedOn))
            //{
            //    // 数据已经被修改
            //    statusCode = StatusCode.ErrorChanged.ToString();
            //}
            // 检查编号是否重复
            // if (this.Exists(BaseItemDetailsEntity.FieldItemCode, itemDetailsEntity.ItemCode, itemDetailsEntity.Id))
            // if (this.Exists(BaseItemDetailsEntity.FieldItemValue, itemDetailsEntity.ItemValue, itemDetailsEntity.Id))
            // 检查名称是否重复

            List<KeyValuePair<string, object>> parameters = new List<KeyValuePair<string, object>>();
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldItemCode, itemDetailsEntity.ItemCode));
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldItemName, itemDetailsEntity.ItemName));
            parameters.Add(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldDeletionStateCode, 0));

            if (this.Exists(parameters, itemDetailsEntity.Id))
            {
                // 名称已重复
                statusCode = StatusCode.Exist.ToString();
                return returnValue;
            }
            returnValue = this.UpdateEntity(itemDetailsEntity);
            if (returnValue == 1)
            {
                statusCode = StatusCode.OKUpdate.ToString();
            }
            else
            {
                statusCode = StatusCode.ErrorDeleted.ToString();
            }
            return returnValue;
        }
 /// <summary>
 /// 转换数据
 /// </summary>
 private BaseItemDetailsEntity GetEntity()
 {
     BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity();
     if (string.IsNullOrEmpty(this.ParentId))
     {
         itemDetailsEntity.ParentId = null;
     }
     else
     {
         itemDetailsEntity.ParentId = int.Parse(this.ParentId);
     }
     itemDetailsEntity.ItemCode = this.txtCode.Text;
     itemDetailsEntity.ItemName = this.txtFullName.Text;
     itemDetailsEntity.ItemValue = this.txtItemValue.Text;
     itemDetailsEntity.Enabled = this.chkEnabled.Checked ? 1 : 0;
     itemDetailsEntity.Description = this.txtDescription.Text;
     itemDetailsEntity.AllowDelete = 1;
     itemDetailsEntity.AllowEdit = 1;
     return itemDetailsEntity;
 }
 /// <summary>
 /// 更新实体
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 public int UpdateEntity(BaseItemDetailsEntity itemDetailsEntity)
 {
     SQLBuilder sqlBuilder = new SQLBuilder(DbHelper);
     sqlBuilder.BeginUpdate(this.CurrentTableName);
     this.SetEntity(sqlBuilder, itemDetailsEntity);
     if (UserInfo != null)
     {
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldModifiedUserId, UserInfo.Id);
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldModifiedBy, UserInfo.RealName);
     }
     sqlBuilder.SetDBNow(BaseItemDetailsEntity.FieldModifiedOn);
     sqlBuilder.SetWhere(BaseItemDetailsEntity.FieldId, itemDetailsEntity.Id);
     return sqlBuilder.EndUpdate();
 }
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 public int Update(BaseItemDetailsEntity itemDetailsEntity)
 {
     return this.UpdateEntity(itemDetailsEntity);
 }
 /// <summary>
 /// 获取实体
 /// </summary>
 /// <param name="id">主键</param>
 public BaseItemDetailsEntity GetEntity(string id)
 {
     BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity(this.GetDataTable(new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldId, id)));
     return itemDetailsEntity;
 }
 /// <summary>
 /// 添加实体
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 public string AddEntity(BaseItemDetailsEntity itemDetailsEntity)
 {
     string sequence = string.Empty;
     if (itemDetailsEntity.SortCode == 0)
     {
         BaseSequenceManager sequenceManager = new BaseSequenceManager(DbHelper, this.Identity);
         sequence = sequenceManager.GetSequence(this.CurrentTableName);
         itemDetailsEntity.SortCode = int.Parse(sequence);
     }
     SQLBuilder sqlBuilder = new SQLBuilder(DbHelper, this.Identity, this.ReturnId);
     sqlBuilder.BeginInsert(this.CurrentTableName, BaseItemDetailsEntity.FieldId);
     if (!this.Identity)
     {
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldId, itemDetailsEntity.Id);
     }
     else
     {
         if (!this.ReturnId && (DbHelper.CurrentDbType == DbTypes.Oracle || DbHelper.CurrentDbType == DbTypes.DB2))
         {
             if (DbHelper.CurrentDbType == DbTypes.Oracle)
             {
                 sqlBuilder.SetFormula(BaseItemDetailsEntity.FieldId, "SEQ_" + this.CurrentTableName.ToUpper() + ".NEXTVAL ");
             }
             if (DbHelper.CurrentDbType == DbTypes.DB2)
             {
                 sqlBuilder.SetFormula(BaseItemDetailsEntity.FieldId, "NEXT VALUE FOR SEQ_" + this.CurrentTableName.ToUpper());
             }
         }
         else
         {
             if (this.Identity && (DbHelper.CurrentDbType == DbTypes.Oracle || DbHelper.CurrentDbType == DbTypes.DB2))
             {
                 if (string.IsNullOrEmpty(sequence))
                 {
                     BaseSequenceManager sequenceManager = new BaseSequenceManager(DbHelper, this.Identity);
                     sequence = sequenceManager.GetSequence(this.CurrentTableName);
                 }
                 itemDetailsEntity.Id = int.Parse(sequence);
                 sqlBuilder.SetValue(BaseItemDetailsEntity.FieldId, itemDetailsEntity.Id);
             }
         }
     }
     this.SetEntity(sqlBuilder, itemDetailsEntity);
     if (UserInfo != null)
     {
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldCreateUserId, UserInfo.Id);
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldCreateBy, UserInfo.RealName);
     }
     sqlBuilder.SetDBNow(BaseItemDetailsEntity.FieldCreateOn);
     if (UserInfo != null)
     {
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldModifiedUserId, UserInfo.Id);
         sqlBuilder.SetValue(BaseItemDetailsEntity.FieldModifiedBy, UserInfo.RealName);
     }
     sqlBuilder.SetDBNow(BaseItemDetailsEntity.FieldModifiedOn);
     if (DbHelper.CurrentDbType == DbTypes.SqlServer && this.Identity)
     {
         sequence = sqlBuilder.EndInsert().ToString();
     }
     else
     {
         sqlBuilder.EndInsert();
     }
     return sequence;
 }
 /// <summary>
 /// 添加
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 /// <param name="identity">自增量方式</param>
 /// <param name="returnId">返回主鍵</param>
 /// <returns>主键</returns>
 public string Add(BaseItemDetailsEntity itemDetailsEntity, bool identity, bool returnId)
 {
     this.Identity = identity;
     this.ReturnId = returnId;
     return this.AddEntity(itemDetailsEntity);
 }
 /// <summary>
 /// 添加
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 /// <returns>主键</returns>
 public string Add(BaseItemDetailsEntity itemDetailsEntity)
 {
     return this.AddEntity(itemDetailsEntity);
 }
 /// <summary>
 /// 设置实体
 /// </summary>
 /// <param name="itemDetailsEntity">实体</param>
 private void SetEntity(SQLBuilder sqlBuilder, BaseItemDetailsEntity itemDetailsEntity)
 {
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldParentId, itemDetailsEntity.ParentId);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldItemCode, itemDetailsEntity.ItemCode);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldItemName, itemDetailsEntity.ItemName);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldItemValue, itemDetailsEntity.ItemValue);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldAllowEdit, itemDetailsEntity.AllowEdit);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldAllowDelete, itemDetailsEntity.AllowDelete);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldIsPublic, itemDetailsEntity.IsPublic);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldEnabled, itemDetailsEntity.Enabled);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldDeletionStateCode, itemDetailsEntity.DeletionStateCode);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldSortCode, itemDetailsEntity.SortCode);
     sqlBuilder.SetValue(BaseItemDetailsEntity.FieldDescription, itemDetailsEntity.Description);
     SetEntityExpand(sqlBuilder, itemDetailsEntity);
 }
 /// <summary>
 /// 加载窗体
 /// </summary>
 public override void FormOnLoad()
 {
     this.itemDetailsEntity = DotNetService.Instance.ItemDetailsService.GetEntity(UserInfo, this.TargetTableName, this.EntityId);
     // 显示内容
     this.ShowEntity();
     // 设置焦点
     this.ActiveControl = this.txtCode;
     this.txtCode.Focus();
 }
partial         void SetEntityExpand(SQLBuilder sqlBuilder, BaseItemDetailsEntity itemDetailsEntity);
 public FrmItemDetailsAdd(BaseItemDetailsEntity entity)
     : this()
 {
     this.itemDetailsEntity = entity;
 }
 /// <summary>
 /// 批量进行保存
 /// </summary>
 /// <param name="dataTable">数据表</param>
 /// <returns>影响行数</returns>
 public override int BatchSave(DataTable dataTable)
 {
     int returnValue = 0;
     BaseItemDetailsEntity itemDetailsEntity = new BaseItemDetailsEntity();
     foreach (DataRow dataRow in dataTable.Rows)
     {
         // 删除状态
         if (dataRow.RowState == DataRowState.Deleted)
         {
             string id = dataRow[BaseItemDetailsEntity.FieldId, DataRowVersion.Original].ToString();
             if (id.Length > 0)
             {
                 if (itemDetailsEntity.AllowDelete == 1)
                 {
                     returnValue += this.Delete(id);
                 }
             }
         }
         // 被修改过
         if (dataRow.RowState == DataRowState.Modified)
         {
             string id = dataRow[BaseItemDetailsEntity.FieldId, DataRowVersion.Original].ToString();
             if (id.Length > 0)
             {
                 itemDetailsEntity.GetFrom(dataRow);
                 // 判断是否允许编辑
                 if (itemDetailsEntity.AllowEdit == 1)
                 {
                     returnValue += this.UpdateEntity(itemDetailsEntity);
                 }
                 else
                 {
                     // 不允许编辑,但是排序还是允许的
                     returnValue += this.SetProperty(id, new KeyValuePair<string, object>(BaseItemDetailsEntity.FieldSortCode, itemDetailsEntity.SortCode));
                 }
             }
         }
         // 添加状态
         if (dataRow.RowState == DataRowState.Added)
         {
             itemDetailsEntity.GetFrom(dataRow);
             returnValue += this.AddEntity(itemDetailsEntity).Length > 0 ? 1 : 0;
         }
         if (dataRow.RowState == DataRowState.Unchanged)
         {
             continue;
         }
         if (dataRow.RowState == DataRowState.Detached)
         {
             continue;
         }
     }
     return returnValue;
 }