Пример #1
0
        public void GetCollectionWithLocalDbTest()
        {
            var _mongoMock = new MongoAccess();
            IMongoCollection <Player> players = _mongoMock.GetCollection <Player>(_collectionName);

            Assert.Equal(_collectionName, players.CollectionNamespace.CollectionName);
        }
Пример #2
0
        public void InsertTest( )
        {
            var           _mongoMock = new MongoAccess();
            List <Player> players    = new List <Player>(new CollectionGenerator().GeneratePlayerCollection(10));

            _mongoMock.InsertMany(_mongoMock.GetCollection <Player>(_collectionName), players);

            IMongoCollection <Player> playersInserted = _mongoMock.GetCollection <Player>(_collectionName);

            Assert.Equal(10, playersInserted.CountDocuments(new FilterDefinitionBuilder <Player>().Empty));

            Player _player;

            for (int i = 0; i < playersInserted.CountDocuments(new FilterDefinitionBuilder <Player>().Empty); i++)
            {
                _player = playersInserted.Find(x => x.Name.Equals($"Player{i}")).Single();
                if (_player != null)
                {
                    Assert.Equal($"Player{i}", _player.Name);
                }
                else
                {
                    Assert.True(false, "One of the players wasn't inserted");
                }
            }
        }
Пример #3
0
        static void InsertOneByORM()
        {
            Restaurant restaurant = new Restaurant();

            restaurant.address = new Address {
                street = "jjjjjjjjjjjjjjj", zipcode = "88888", building = "50", coord = new List <double>()
                {
                    73.9557413, 40.7720266
                }
            };
            restaurant.borough = "Manhattan Manhattan";
            restaurant.cuisine = "Italian Italian";
            restaurant.grades  = new List <Grade>()
            {
                new Grade {
                    date = new DateTime(2014, 10, 1, 0, 0, 0, DateTimeKind.Utc), grade = "A", score = 22
                },
                new Grade {
                    date = new DateTime(2014, 1, 6, 0, 0, 0, DateTimeKind.Utc), grade = "B", score = 11
                }
            };
            restaurant.name          = "GOOOOOOO";
            restaurant.restaurant_id = "33333333333";
            restaurant.ts            = MongoAccess.GetTimestamp();

            db.InsertOne <Restaurant>("restaurants", restaurant);


            foreach (var doc in db.Find <Restaurant>("restaurants"))
            {
                Console.WriteLine(doc.address.street);
                Console.WriteLine(doc.grades[0].date);
                Console.WriteLine(doc.ts);
            }
        }
Пример #4
0
        public void GetCollectionWithDbParameterTest()
        {
            var                       _mongoMock    = new MongoAccess();
            IMongoDatabase            mongoDatabase = _mongoMock.GetDataBase(_dataBaseName);
            IMongoCollection <Player> players       = _mongoMock.GetCollection <Player>(mongoDatabase, _collectionName);

            Assert.Equal(_collectionName, players.CollectionNamespace.CollectionName);
        }
Пример #5
0
        public async Task <Response <string> > SaveCache(MongoAccess mongo, string collection)
        {
            Response <string> response = new Response <string>();
            var col = mongo.DBContext.GetCollection <ChannelEndpoint>(collection);
            await col.InsertManyAsync(Cache);

            return(response);
        }
Пример #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            mongo = new MongoAccess("mongodb://*****:*****@ds054619.mlab.com:54619/isit420");

            var CdDataSet = mySqlAccess.GetCustData();

            CdDataList.DataSource = CdDataSet;
            // CdDataList.DataMember = "CDs";
            CdDataList.DataBind();
        }
Пример #7
0
        public async Task <Response <string> > SaveCache(MongoAccess mongo)
        {
            Response <string> response = new Response <string>();
            var col = mongo.DBContext.GetCollection <GameModel>("games");
            InsertManyOptions options = new InsertManyOptions();

            options.BypassDocumentValidation = true;
            await col.InsertManyAsync(Cache, options);


            return(response);
        }
Пример #8
0
        public void GetDataBaseTest()
        {
            var            _mongoMock = new MongoAccess();
            IMongoDatabase _mongoDb   = _mongoMock.GetDataBase(_dataBaseName);

            if (_mongoDb != null)
            {
                Assert.Equal(_dataBaseName, _mongoDb.DatabaseNamespace.DatabaseName);
            }
            else
            {
                Assert.True(false, "Wasn't possible to retrieve mongo database");
            }
        }
Пример #9
0
        static void Main(string[] args)
        {
            //var collection = db.GetCollection<Restaurant>("restaurant");


            Tuple <string, string> connSet = ManagementConnectionSetting.GetConnectionString("MongoDB");

            db = new MongoAccess(connSet.Item1, connSet.Item2);
            //FindOneAndDelete();
            //FindOneAndUpdate();
            //ListCollections();
            //InsertOneByORM();
            InsertOne();
            //RunCommand();
            Console.ReadLine();
        }
Пример #10
0
        /// <summary>
        /// Live endpoint data... need to consume by games instead.
        /// </summary>
        /// <returns></returns>
        public async Task <Response <string> > ConsumeLive()
        {
            Response <string> response = new Response <string>();
            string            query    = "http://api.azubu.tv/public/channel/live/list";

            try
            {
                response = await VisitEndpointAsync(query);

                response.Query = query;
                List <ChannelEndpoint> cache = new List <ChannelEndpoint>();

                BsonDocument doc = BsonDocument.Parse(response.Result);
                int          cnt = doc[0].AsBsonArray.Count;
                foreach (var _doc in doc[0].AsBsonArray)
                {
                    ChannelEndpoint temp = new ChannelEndpoint();
                    temp.ApiId = _doc["user"]["id"].ToString();
                    //temp.Game = need to find a way to populate friggin' games.
                    temp.Name               = (string)_doc["user"]["username"];
                    temp.EndpointUrl        = (string)_doc["url_channel"];
                    temp.TotalViewCount     = (int)_doc["view_count"];
                    temp.OrigionalCacheDate = DateTime.Now;
                    temp.LatesteCacheDate   = DateTime.Now;
                    cache.Add(temp);
                }
                MongoAccess mongo = new MongoAccess(_config.ConnectionStrings["local"], "stream_cache");
                var         col   = mongo.DBContext.GetCollection <ChannelEndpoint>("azubu");
                await col.InsertManyAsync(cache);

                response.Result = "Insert successful";
            }
            catch (Exception ex)
            {
                response.ReceiveException(ex, MethodBase.GetCurrentMethod());
            }

            return(response);
        }
Пример #11
0
        public void StartConnection()
        {
            var _mongoMock = new MongoAccess();

            Assert.True(_mongoMock.StartConnection());
        }
Пример #12
0
        static void InsertOne()
        {
            BsonDocument document = new BsonDocument
            {
                { "address", new BsonDocument
                  {
                      { "street", "2 Gennudddddddd" },
                      { "zipcode", "10075" },
                      { "building", "1480" },
                      { "coord", new BsonArray {
                                        73.9557413, 40.7720266
                                    } }
                  } },
                { "borough", "Manhattan" },
                { "cuisine", "Italian" },
                { "grades", new BsonArray
                  {
                      new BsonDocument
                      {
                          { "date", new DateTime(2014, 10, 1, 0, 0, 0, DateTimeKind.Utc) },
                          { "grade", "A" },
                          { "score", 11 }
                      },
                      new BsonDocument
                      {
                          { "date", new DateTime(2014, 1, 6, 0, 0, 0, DateTimeKind.Utc) },
                          { "grade", "B" },
                          { "score", 17 }
                      }
                  } },
                { "name", "Vella" },
                { "restaurant_id", "41413123" },
                { "ts", MongoAccess.GetTimestamp() }
            };

            db.InsertOne <BsonDocument>("restaurants", document);

            //foreach (var doc in db.Find<BsonDocument>("restaurants").Result)
            //{
            //    Console.WriteLine(doc["address"]["street"]);
            //    Console.WriteLine(doc["grades"][0]["date"]);
            //}
            foreach (var doc in db.Find <BsonDocument>("restaurants"))
            {
                Console.WriteLine(doc["address"]["street"]);
                Console.WriteLine(doc["grades"][0]["date"]);
            }



            //using (IAsyncCursor<BsonDocument> cursor = db.Find<BsonDocument>("restaurants"))
            //{
            //    IEnumerable<BsonDocument> batch = cursor.Current;
            //    foreach (BsonDocument doc in batch)
            //    {
            //        // process document
            //        Console.WriteLine(doc["address"]["street"]);
            //        Console.WriteLine(doc["grades"][0]["date"]);
            //    }
            //}
        }
Пример #13
0
        static void FindOneAndUpdate()
        {
            Restaurant restaurant = new Restaurant();

            restaurant.address = new Address {
                street = "rrrrrrrrrrrr", zipcode = "888888", building = "50", coord = new List <double>()
                {
                    73.9557413, 40.7720266
                }
            };
            restaurant.borough = "Manhattan Manhattan";
            restaurant.cuisine = "Italian Italian";
            restaurant.grades  = new List <Grade>()
            {
                new Grade {
                    date = new DateTime(2014, 10, 1, 0, 0, 0, DateTimeKind.Utc), grade = "A", score = 22
                },
                new Grade {
                    date = new DateTime(2014, 1, 6, 0, 0, 0, DateTimeKind.Utc), grade = "B", score = 11
                }
            };
            restaurant.name          = "GOOOOOOO";
            restaurant.restaurant_id = "33333333333";
            restaurant.ts            = MongoAccess.GetTimestamp();

            FilterDefinitionBuilder <Restaurant> builder = Builders <Restaurant> .Filter;
            //FilterDefinition<Restaurant> filter = builder.Eq("_id", new ObjectId("5555b1d97eb2e22c90c199ed")) & builder.Eq("ts", 1431679450);
            FilterDefinition <Restaurant> filter = builder.Where(r => r.Id == new ObjectId("5555b1d97eb2e22c90c199ed") && r.ts == 1431679450);

            foreach (var doc in db.Find <Restaurant>("restaurants", filter))
            {
                Console.WriteLine(doc.address.street);
                Console.WriteLine(doc.grades[0].date);
                Console.WriteLine(doc.ts);
            }
            //UpdateDefinition<Restaurant> update = Builders<Restaurant>.Update.Set("address.street", "East 31st Street")
            //                                                          .Set("ts", MongoAccess.GetTimestamp());
            //UpdateDefinition<Restaurant> update = Builders<Restaurant>.Update.Set("address", restaurant.address)
            //                                                          .Set("ts", restaurant.ts);
            UpdateDefinition <Restaurant> update = Builders <Restaurant> .Update.Set(r => r.address, restaurant.address)
                                                   .Set(r => r.ts, restaurant.ts);



            //Restaurant tt = db.FindOneAndUpdate<Restaurant, Restaurant>("restaurants", filter, update);
            Restaurant tt = db.FindOneAndUpdate <Restaurant>("restaurants", filter, update);

            FindOptions <Restaurant, Restaurant> options = new FindOptions <Restaurant>();

            options.Projection = Builders <Restaurant> .Projection.Include(r => r.address).Include(r => r.grades);

            foreach (var doc in db.Find <Restaurant>("restaurants", options))
            {
                Console.WriteLine(doc.address.street);
                Console.WriteLine(doc.grades[0].date);
                Console.WriteLine(doc.ts);
            }


            FindOptions <Restaurant, BsonDocument> options2 = new FindOptions <Restaurant, BsonDocument>();

            options2.Projection = Builders <Restaurant> .Projection.Include(r => r.address);

            foreach (var doc in db.Find <Restaurant, BsonDocument>("restaurants", options2))
            {
            }

            FindOptions <Restaurant, AddressProjection> options3 = new FindOptions <Restaurant, AddressProjection>();

            options3.Projection = Builders <Restaurant> .Projection.Include(r => r.address);//傳回想要輸出的資料

            foreach (var doc in db.Find <Restaurant, AddressProjection>("restaurants", options3))
            {
                Console.WriteLine(doc.address.street);
            }
        }
Пример #14
0
 public AllDataController(MongoAccess mongoAccess)
 {
     this.mongoAccess = mongoAccess;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public LessonCatalogRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.LessonCatalogs;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public NotificationRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.Notifications;
 }
Пример #17
0
 public FileController(MongoAccess mongo, IRoundService rounds, IFileService files)
 {
     _rounds = rounds;
     _files  = files;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public StudentKeyRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.StudentKeys;
 }
Пример #19
0
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public CommentRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.Comments;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public FriendRequestRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.FriendRequests;
 }
Пример #21
0
 public DataSourceController(MongoAccess mongoAccess)
 {
     this.mongoAccess = mongoAccess;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public LikeDiscussionRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.LikeDiscussions;
 }
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public UserProfileRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.UserProfiles;
 }
Пример #24
0
 /// <summary>
 /// Initialize repository
 /// </summary>
 /// <param name="mongoUtil">Mongo access utility</param>
 public ClassRoomRepository(MongoAccess.MongoUtil mongoUtil, IOptions<DatabaseTableOptions> option)
 {
     _mongoUtil = mongoUtil;
     TableName = option.Value.ClassRooms;
 }