Пример #1
0
        public TransitPicture GetRandomPictureByType(string ticket, string type)
        {
            using (SnCore.Data.Hibernate.Session.OpenConnection())
            {
                ISession session                   = SnCore.Data.Hibernate.Session.Current;
                ManagedSecurityContext sec         = new ManagedSecurityContext(session, ticket);
                PictureType            picturetype = ManagedPictureType.Find(session, type);

                if (picturetype == null)
                {
                    return(null);
                }

                IList <Picture> list = session.CreateCriteria(typeof(Picture))
                                       .Add(Expression.Eq("Type.Id", picturetype.Id))
                                       .List <Picture>();

                if (list.Count == 0)
                {
                    return(null);
                }

                ManagedPicture m_instance = new ManagedPicture();
                m_instance.SetInstance(session, list[new Random().Next() % list.Count]);
                return(m_instance.GetTransitInstance(sec));
            }
        }
Пример #2
0
        public TransitPicture GetRandomPictureByType(string ticket, string type)
        {
            using (SnCore.Data.Hibernate.Session.OpenConnection())
            {
                ISession session = SnCore.Data.Hibernate.Session.Current;
                ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);
                PictureType picturetype = ManagedPictureType.Find(session, type);

                if (picturetype == null)
                {
                    return null;
                }

                IList<Picture> list = session.CreateCriteria(typeof(Picture))
                    .Add(Expression.Eq("Type.Id", picturetype.Id))
                    .List<Picture>();

                if (list.Count == 0)
                {
                    return null;
                }

                ManagedPicture m_instance = new ManagedPicture();
                m_instance.SetInstance(session, list[new Random().Next() % list.Count]);
                return m_instance.GetTransitInstance(sec);
            }
        }