Implementation class for Mongo data repository
Inheritance: INoSqlRepository
Example #1
0
        public CacheManager()
        {
            var sde = new SdeRepository("srvprodist", "5151", "bdgd", "bdgd", "sde.DEFAULT");
            var mongo = new MongoRepository();

            var cache1 = new InMemoryCache(mongo, sde.GetFullExtent(FeatureName), FeatureName);
            var cache2 = new NoSqlCache(sde, mongo, FeatureName);
            var cache3 = new SdeCache(sde, FeatureName);

            this.Caches = new List<ICache> { cache1, cache2, cache3 };
        }
        public void Method01()
        {
            var sde = new SdeRepository("srvprodist", "5151", "bdgd", "bdgd", "sde.DEFAULT");
            var nosql = new MongoRepository();

            var cache = new NoSqlCache(sde, nosql, "admgid.Switch_PT");
            cache.BuildAllCache();

            IList<IGeometry> list = new List<IGeometry>();

            var envelop = new Envelope(325017, 320003, 7392018, 7391712);
            IEnvelope affected = null;

            var inicio = DateTime.Now;
            var result = cache.RetriveData(envelop, ref list, ref affected);
            var tempo1 = (DateTime.Now - inicio).TotalMilliseconds;

            inicio = DateTime.Now;
            var fromSde = sde.GetByEnvelope("admgid.Switch_PT", envelop);
            var tempo2 = (DateTime.Now - inicio).TotalMilliseconds;

            Assert.AreEqual(list.Count, fromSde.Count());
            Assert.IsTrue(tempo1 < tempo2);
        }
 public void Setup()
 {
     repository = new MongoRepository();
 }