SetModified() публичный Метод

public SetModified ( ) : void
Результат void
Пример #1
5
 /// <summary>
 /// 更新记录状态
 /// </summary>
 /// <param name="dataRow">记录</param>
 /// <param name="updateType">操作类型</param>
 private void SetRowState(DataRow dataRow, UpdateType updateType)
 {
     if (dataRow.RowState != DataRowState.Unchanged) return;
     if (updateType == UpdateType.Add)
         dataRow.SetAdded();
     if (updateType == UpdateType.Modify)
         dataRow.SetModified();
 }
Пример #2
0
        private void CreateRow(EntityObject entityObject, DataRow parentRow, Dictionary<EntityKey, EntityState> states, DataSet dataset)
        {
            var tableName = entityObject.GetType().Name;
            var dataTable = dataset.Tables[tableName];
            var state = GetState(entityObject, states,  parentRow);
            DataRow dataRow = null;

            if (state == EntityState.Added) {
                dataRow = dataTable.NewRow();
                ApplyValue(dataRow, entityObject);
                dataTable.Rows.Add(dataRow);
                ApplyRelationValue(dataRow, parentRow, dataset);
                if (parentRow != null && parentRow.RowState == DataRowState.Unchanged)
                {
                    parentRow.SetModified();
                }
            }
            else {
                dataRow = dataTable.Rows.Find(entityObject.EntityKey.EntityKeyValues.Select(c => c.Value).ToArray());
                if (dataRow != null)
                {
                    if (state == EntityState.Deleted)
                    {
                        dataRow.Delete();
                    }
                    else
                    {
                        ApplyValue(dataRow, entityObject);
                    }
                }
            }

            var navigationProperties = entityObject.GetType().GetProperties().Where(c => typeof(IList).IsAssignableFrom(c.PropertyType));
            foreach (var navigationProperty in navigationProperties) {
                var navigationValue = (IList)navigationProperty.GetValue(entityObject, null);
                foreach (EntityObject childObject in navigationValue) {
                    CreateRow(childObject, dataRow, states, dataset);
                }
            }
        }
Пример #3
0
 //刷新缓存记录的数据
 protected void UpdateSummaryRowState(DataRow dataRow)
 {
     dataRow.AcceptChanges();
     if (_UpdateType == UpdateType.Modify) dataRow.SetModified();
     if (_UpdateType == UpdateType.Add) dataRow.SetAdded();
 }