/// <summary> /// 更新前 /// </summary> /// <param name="eventData"></param> public void HandleEvent(EntityUpdatingEventData <SysSetting> eventData) { //新增持久化数据,此处改变数据会写入数据 //eventData.Entity.Name += "_更新前"; EntityEventProcessDataList.Add(new EntityEventProcessData { DataDate = DateTime.Now, DataContent = "更新前" }); }
public void HandleEvent(EntityUpdatingEventData <Store> eventData) { if (!eventData.Entity.IsDefault) { if (StoreManager.GetAll().Count(o => o.IsDefault && o.Id != eventData.Entity.Id) == 0) { throw new UserFriendlyException("操作失败,必须有一个默认仓库"); } } }
public async Task HandleEventAsync(EntityUpdatingEventData <Asset> eventData) { var entity = eventData.Entity; var dbAsset = await _assetRepo.FindAsync(entity.Id); var dbContext = await _assetRepo.GetDbContextAsync(); foreach (var entry in dbContext.Entry(dbAsset).Properties) { Console.WriteLine( $"Property '{entry.Metadata.Name}'" + $" is {(entry.IsModified ? "modified" : "not modified")} " + $"Current value: '{entry.CurrentValue}' " + $"Original value: '{entry.OriginalValue}'"); } var changeInfo = dbContext.ChangeTracker.Entries() .Where(t => t.State == EntityState.Modified).ToList(); await Task.CompletedTask; }