예제 #1
0
        private static IList GetLinkedEntities(IUnitOfWork uow, ClearDependenceInfo depend, IDomainObject masterEntity)
        {
            var list = uow.Session.CreateCriteria(depend.ObjectClass)
                       .Add(Restrictions.Eq(depend.PropertyName + ".Id", masterEntity.Id)).List();

            return(list);
        }
예제 #2
0
        IList <EntityDTO> IDeleteInfo.GetDependEntities(IDeleteCore core, ClearDependenceInfo depend, EntityDTO masterEntity)
        {
            var list = core.UoW.Session.CreateCriteria(ObjectClass)
                       .Add(Restrictions.Eq(depend.PropertyName + ".Id", (int)masterEntity.Id)).List();

            return(MakeResultList(list));
        }
예제 #3
0
 public Operation CreateClearOperation(EntityDTO masterEntity, ClearDependenceInfo depend, IList <EntityDTO> dependEntities)
 {
     return(new HibernateCleanOperation {
         ItemId = masterEntity.Id,
         ClearingItems = dependEntities,
         EntityType = depend.ObjectClass,
         PropertyName = depend.PropertyName
     });
 }
예제 #4
0
 public Operation CreateClearOperation(EntityDTO masterEntity, ClearDependenceInfo depend, IList <EntityDTO> dependEntities)
 {
     return(new SQLCleanOperation()
     {
         ItemId = masterEntity.Id,
         TableName = TableName,
         CleanField = depend.ClearField,
         WhereStatment = depend.WhereStatment
     });
 }
예제 #5
0
        public static void AddClearDependence <ToClass> (ClearDependenceInfo clearDependence)
        {
            var info = ClassInfos.Find(i => i.ObjectClass == typeof(ToClass));

            if (info == null)
            {
                throw new InvalidOperationException(String.Format("Описание удаления для класса {0} не найдено.", typeof(ToClass)));
            }

            info.ClearItems.Add(clearDependence);
        }
예제 #6
0
 public static void AddClearDependence <ToClass> (ClearDependenceInfo clearDependence)
 {
     Main.AddClearDependence <ToClass>(clearDependence);
 }
예제 #7
0
 public DeleteInfoHibernate <TEntity> AddClearDependence <TDependOn>(Expression <Func <TDependOn, object> > propertyRefExpr)
 {
     ClearItems.Add(ClearDependenceInfo.Create <TDependOn> (propertyRefExpr));
     return(this);
 }
예제 #8
0
 IList <EntityDTO> IDeleteInfo.GetDependEntities(IDeleteCore core, ClearDependenceInfo depend, EntityDTO masterEntity)
 {
     return(GetEntitiesList(depend.WhereStatment, masterEntity.Id));
 }