예제 #1
0
 private bool UpdateCount(DatabaseStatus status)
 {
     try
     {
         status.Items             = (int)database.GetCollection <ContentItem>().Count();
         status.Details           = 0;
         status.DetailCollections = 0;
         status.AuthorizedRoles   = 0;
         status.Versions          = (int)database.GetCollection <ContentVersion>().Count();
         return(true);
     }
     catch (Exception ex)
     {
         logger.Warn(ex);
         return(false);
     }
 }
예제 #2
0
        public override object Deserialize(BsonReader bsonReader, Type nominalType, IBsonSerializationOptions options)
        {
            var id = bsonReader.ReadInt32();

            if (id == 0)
            {
                return(null);
            }
            return(database.IdentityMap.GetOrCreate(id, (i) => database.GetCollection <ContentItem>().FindOne(Query.EQ("_id", i))));
        }
 private T Get(object id)
 {
     return(databaseProvider.GetCollection <T>().FindOne(Query.EQ("_id", (int)id)));
 }
 private ContentItem Get(object id)
 {
     return(database.IdentityMap.GetOrCreate(id, (i) => database.GetCollection <ContentItem>().FindOne(Query.EQ("_id", (int)i))));
 }
예제 #5
0
 public override IQueryable <T> Query <T>()
 {
     return(provider.GetCollection <ContentItem>().AsQueryable <T>());
 }
예제 #6
0
 private void SetChildren(ContentItem item)
 {
     item.Children = new ItemList(() => database.GetCollection <ContentItem>().Find(Query.EQ("AncestralTrail", item.GetTrail())));
 }