Пример #1
0
        public static PackageEntity CreateLines(this PackageEntity package, IEnumerable <IEntity> entities)
        {
            package.Save();

            int inserts =
                entities.GroupBy(a => a.GetType()).Sum(gr =>
                                                       gr.GroupsOf(100).Sum(gr2 =>
                                                                            giInsertPackageLines.GetInvoker(gr.Key)(package, gr2.Select(a => a.ToLite()))));

            return(package);
        }
Пример #2
0
        public static PackageEntity CreateLines(this PackageEntity package, IEnumerable <Lite <IEntity> > lites)
        {
            package.Save();

            int inserts =
                lites.GroupBy(a => a.EntityType).Sum(gr =>
                                                     gr.GroupsOf(100).Sum(gr2 =>
                                                                          giInsertPackageLines.GetInvoker(gr.Key)(package, gr2)));

            return(package);
        }
Пример #3
0
        public static PackageEntity CreateLinesQuery <T>(this PackageEntity package, IQueryable <T> entities) where T : Entity
        {
            package.Save();

            entities.UnsafeInsert(e => new PackageLineEntity
            {
                Package = package.ToLite(),
                Target  = e,
            });

            return(package);
        }