public void Remove(Action <TAppModel> condition) { TAppModel local = DynamicProxy.CreateDynamicProxy <TAppModel>(); condition(local); this._context.EntitySet <TDbEntity>().DeleteBy(DynamicProxy.GetModifiedProperties(local)); }
private string ParseSetStringFromProxEntity(TEntity proxyEntity, List <IDbDataParameter> dbParameters) { Dictionary <string, object> modifiedProperties = DynamicProxy.GetModifiedProperties(proxyEntity); List <string> values = this.ParseFromProxyEntityDictionary(modifiedProperties, dbParameters); return(string.Join(",", values)); }
public TEntity Create(TEntity entity) { Dictionary <string, object> modifiedProperties; if (DynamicProxy.IsProxy(entity.GetType())) { modifiedProperties = DynamicProxy.GetModifiedProperties(entity); } else { modifiedProperties = this._entityMapper.GetPropertyValues(entity); } List <string> values = new List <string>(); List <string> list2 = new List <string>(); List <IDbDataParameter> list3 = new List <IDbDataParameter>(); foreach (PropertyInfo info in this._properties) { if (this._autoIncrementProperty != info) { values.Add("[" + info.Name + "]"); list2.Add("@" + info.Name); IDbDataParameter item = this._helper.CreateParameter(Xinchen.DbEntity.DbHelper.TypeMapper[info.PropertyType], "@" + info.Name, DBNull.Value); if (modifiedProperties.ContainsKey(info.Name)) { item.Value = modifiedProperties[info.Name]; } if (this._keyProperty == info) { int result = 0; if (int.TryParse(Convert.ToString(item.Value), out result) && (result <= 0)) { throw new EntityException("检测到主键值为" + result.ToString() + ",是否忘记给主键赋值?实体名:" + this._entityType.Name); } } if (item.Value == null) { item.Value = DBNull.Value; } list3.Add(item); } } string sql = string.Format("insert into {0} ({1}) values({2});", "[" + this.TableName + "]", string.Join(",", values), string.Join(",", list2)); if (this._autoIncrementProperty != null && DbHelper.ProviderName != "System.Data.OleDb") { sql = sql + "SELECT @@IDENTITY;"; int num2 = this._helper.ExecuteScalarCount(sql, list3.ToArray()); if (this._autoIncrementProperty != null) { this._entityMapper.SetValue(entity, this._autoIncrementProperty.Name, num2); } } else { this._helper.ExecuteUpdate(sql, list3.ToArray()); } return(DynamicProxy.CreateDynamicProxy <TEntity>(entity)); }
public void DeleteBy(Action <TEntity> where) { TEntity local = (TEntity)Activator.CreateInstance(DynamicProxy.CreateDynamicProxyType <TEntity>()); where (local); Dictionary <string, object> modifiedProperties = DynamicProxy.GetModifiedProperties(local); this.DeleteBy(modifiedProperties); }
public TAppModel Get(Action <TAppModel> condition) { TAppModel local = DynamicProxy.CreateDynamicProxy <TAppModel>(); condition(local); Dictionary <string, object> modifiedProperties = DynamicProxy.GetModifiedProperties(local); TDbEntity source = this._context.EntitySet <TDbEntity>().GetList(modifiedProperties).FirstOrDefault <TDbEntity>(); if (source == null) { return(default(TAppModel)); } return(EntityMapper.Map <TDbEntity, TAppModel>(source)); }
public IList <TAppModel> GetList(Action <TAppModel> condition) { TAppModel local = DynamicProxy.CreateDynamicProxy <TAppModel>(); condition(local); Dictionary <string, object> modifiedProperties = DynamicProxy.GetModifiedProperties(local); IList <TDbEntity> by = this._context.EntitySet <TDbEntity>().GetList(modifiedProperties); List <TAppModel> list2 = new List <TAppModel>(); foreach (TDbEntity local2 in by) { list2.Add(EntityMapper.Map <TDbEntity, TAppModel>(local2)); } return(list2); }
public List <PrivilegeManagement.Model.UserRole> GetList(Action <PrivilegeManagement.Model.UserRole> condition) { var userRoleRemote = DynamicProxy.CreateDynamicProxy <UserRole>(); condition(userRoleRemote); var dict = DynamicProxy.GetModifiedProperties(userRoleRemote); var listLocal = _context.UserRoles.GetBy(dict); var listRemote = new List <PrivilegeManagement.Model.UserRole>(); foreach (var userRole in listLocal) { PrivilegeManagement.Model.UserRole userRemote = new UserRole(); EntityMapper.Map(userRole, userRemote); listRemote.Add(userRemote); } return(listRemote); }
public void Update(TEntity entity) { Dictionary <string, object> modifiedProperties; int id = 0; if (this._entityType.FullName == entity.GetType().BaseType.FullName) { modifiedProperties = DynamicProxy.GetModifiedProperties(entity); id = Convert.ToInt32(this._entityMapper.GetValue(entity, this._keyProperty.Name)); } else { modifiedProperties = this._entityMapper.GetPropertyValues(entity); id = Convert.ToInt32(modifiedProperties[this._keyProperty.Name]); } this.Update(modifiedProperties, id); }
public Dictionary <string, object> GetModifiedProperties(object o) { return(DynamicProxy.GetModifiedProperties(o)); }