/// <summary> /// 保存附件信息 /// </summary> /// <param name="delIDs">需要删除的附件ids</param> /// <param name="infos">附件信息</param> /// <returns>是否保存成功</returns> public virtual bool Save(string delIDs, params SYSAttach[] infos) { var result = false; delIDs = (delIDs ?? string.Empty).Trim(','); if (infos == null || !infos.Any()) goto End; using (var dbContext = BoundedContext.Create()) { var bo = dbContext.Resolve<STDAttachBO>();//dbContext.Repository<STDAttachInfo>(); result = true; var arr = ALConvert.ToList<long>(delIDs); if (arr.Any()) result = bo.Remove(item => arr.Contains(item.ID.Value)); if (result) { foreach (var info in infos) { if (info == null || !(info.ID > 0 ? bo.Modify(info) : bo.Add(info))) { result = false; break; } SaveFile(dbContext, info); } } if (result) dbContext.Commit(); } End: return result; }
/// <summary> /// /// </summary> /// <param name="infos"></param> /// <returns></returns> public virtual bool Save(params SYSMenu[] infos) { if (infos == null || !infos.Any()) { throw new ArgumentNullException("参数不能为空!"); } var result = true; using (var dbContext = BoundedContext.Create()) { var bo = dbContext.Repository <SYSMenu>(); foreach (var info in infos) { result = Save(bo, info); if (!result) { break; } } if (result) { dbContext.Commit(); } } return(result); }
public ApplicationService() { this.OnInject(); this.DependOn(BoundedContext.Create(new UnitOfWorkOptions { IsTransactional = false })); }
/// <summary> /// 保存应用信息 /// </summary> /// <param name="dto">应用信息</param> /// <returns>是否成功</returns> public virtual bool SaveApp(SYSAppRegistDTO dto) { using (var dbContext = BoundedContext.Create()) { if (!(SaveApp(dbContext, dto) && SaveMenu(dbContext, dto) && SaveAppAccess(dbContext, dto))) { return(false); } dbContext.Commit(); return(true); } }
public void Handle(CreateUserCommand evt) { using (var unitOfWork = BoundedContext.Create()) { //创建订单 var orderBO = unitOfWork.Resolve <UserRepository>(); var entity = new UserEntity { Name = evt.UserName }; orderBO.Add(entity); evt.UserID = entity.ID; unitOfWork.Commit(); //向第三方系统发送通知,更新缓存的用户名 entity.ApplyEvent(new UserCreatedEvent()); } }
public override bool Sequence([FromBody] List <SortVM> vm) { if (vm == null) { return(false); } var infos = vm.Map <List <SortVM>, List <TEntity> >(); using (var dbContext = BoundedContext.Create()) { var bo = dbContext.Resolve <Repository <TEntity> >(); infos.ForEach(info => bo.Modify(info)); dbContext.Commit(); } return(true); }
/// <summary> /// /// </summary> /// <param name="action"></param> /// <param name="infos"></param> public virtual void ReadFile(Action<Stream> action, params SYSAttach[] infos) { if (infos == null || !infos.Any()) return; using (var dbContext = BoundedContext.Create()) { foreach (var info in infos) { if (info.Mode == (int)ModeEnum.数据库存储 && info.ID > 0) { info.ReadFile(info.ID.Value, action, dbContext.UnitOfWork); } } dbContext.Commit(); } }
public virtual bool Remove(params SYSAttach[] infos) { if (infos == null) throw new ArgumentNullException("infos"); var result = true; if (!infos.Any()) goto End; using (var dbContext = BoundedContext.Create()) { foreach (var info in infos) { if (!dbContext.Remove(info)) { result = false; break; } } if (result) dbContext.Commit(); else dbContext.Rollback(); } End: return result; }