public static ActivityLog CreateActivityLog( IActivityLoggable entity) { ActivityLog activityLog1 = ActivityLogManager.CreateActivityLog(); activityLog1.EntityID = entity.ID.ToString(); activityLog1.EntityName = EntityConfigManager.GetPersianTitle(entity.GetType()); switch (entity.ObjectState) { case ObjectState.Unchanged: case ObjectState.Detached: activityLog1.Action = 1; break; case ObjectState.Added: activityLog1.Action = 2; break; case ObjectState.Modified: activityLog1.Action = 3; break; case ObjectState.Deleted: activityLog1.Action = 4; break; } ActivityLog activityLog2 = activityLog1; ActivityLogData activityLogData = new ActivityLogData(); activityLogData.Data = SerializationHelper.SerializeCustom((object)entity); activityLogData.ObjectState = ObjectState.Added; activityLog2.LogData = activityLogData; return(activityLog1); }
public byte[] Serialize(Dictionary<string, string> dictionary) { StringBuilder stringBuilder = new StringBuilder(); foreach (KeyValuePair<string, string> keyValuePair in dictionary) stringBuilder.AppendFormat(string.Format("{0}:;:{1},,;,,", (object)EntityConfigManager.GetPropertyPersianTitle(dictionary.GetType(), keyValuePair.Key), keyValuePair.Value == null ? (object)"" : (object)keyValuePair.Value.Replace('{', '(').Replace('}', ')'))); return Encoding.Unicode.GetBytes(stringBuilder.ToString()); }
//public DbSet<TEntity> CreateSet<TEntity>() // where TEntity : class //{ // return _allSet.GetOrAdd(typeof(TEntity).FullName, key => Set<TEntity>()) as DbSet<TEntity>; //} protected override void OnModelCreating(DbModelBuilder modelBuilder) { //Remove unused conventions //modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>(); //配置类型 EntityConfigManager.ConfigDbTypes(modelBuilder, _context); modelBuilder.Filter("SoftDelete", (ISoftDelete d) => d.IsDeleted, false); }
public void Initialize(IConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } Configuration = configuration; Entity = new EntityConfigManager(configuration); var entityDataConfigNode = configuration.GetSection("Aolyn.Data"); var cs1 = ConnectionStringHelper.GetConnectionStrings(entityDataConfigNode); var cs2 = new ConnectionStringCollection(); foreach (var item in cs1) { cs2.Add(item); } ConnectionStrings = cs2; }
public void SetPropertyPersianTitle( Expression <Func <TEntity, object> > propertySelector, string persianTitle) { EntityConfigManager.SetPropertyPersianTitle <TEntity>(propertySelector, persianTitle); }
public void SetPersianTitle(string persianTitle) { EntityConfigManager.SetPersianTitle <TEntity>(persianTitle); }
public byte[] Serialize(object obj) { List<string> stringList = new List<string>() { "ObjectState", "ActionsToLog", "PropertyMaps", "EntityImportItemList", "LogData", "Password", "PlainPassword" }; PropertyInfo[] properties = obj.GetType().GetProperties(); StringBuilder stringBuilder = new StringBuilder(); foreach (PropertyInfo propertyInfo in properties) { if (!((IEnumerable<ParameterInfo>)propertyInfo.GetIndexParameters()).Any<ParameterInfo>() && !stringList.Contains(propertyInfo.Name) && propertyInfo.CanRead) { object obj1 = propertyInfo.GetValue(obj); stringBuilder.AppendFormat(string.Format("{0}:;:{1},,;,,", (object)EntityConfigManager.GetPropertyPersianTitle(obj.GetType(), propertyInfo.Name), obj1 == null ? (object)"NULL" : (object)obj1.ToString().Replace('{', '(').Replace('}', ')'))); } } return Encoding.Unicode.GetBytes(stringBuilder.ToString()); }