Пример #1
0
        protected override IStream <TIn> CreateOutputStream(DeleteEntityFrameworkCoreArgs <TIn, TEntity, TCtx> args)
        {
            var matchingS = args.InputStream.Observable
                            .CombineWithLatest(args.DbContextStream.Observable, (elt, ctx) => new { Element = elt, DbContext = ctx }, true)
                            .Map(i =>
            {
                this.ExecutionContext.InvokeInDedicatedThread(i.DbContext, () =>
                {
                    i.DbContext.DeleteWhere <TEntity>(args.Match.ApplyPartialLeft <TIn, TEntity, bool>(i.Element));
                    i.DbContext.SaveChanges();
                });
                return(i.Element);
            });

            return(base.CreateUnsortedStream(matchingS));
        }
Пример #2
0
 public DeleteEntityFrameworkCoreStreamNode(string name, DeleteEntityFrameworkCoreArgs <TIn, TEntity, TCtx> args) : base(name, args)
 {
 }