Сохраните более 10000 записей в кэше - asp.net mvc - PullRequest
0 голосов
/ 28 июня 2018

У меня есть несколько форматированных записей Json (более 10000), извлеченных из базы данных в этом формате Json:

 {\"ID\":7701,\"Lat\":36.78332170249675,\"Lng\":45.729067325592041}

В ASP.net MVC я хочу сохранить данные в Ram или Cache, чтобы предотвратить получение данных. Но я не смог сохранить его в Cache, думаю, это из-за лимита Cache.

Что вы мне предлагаете? Не перечитывать данные из базы данных SQL Server?

===================== Ниже код Saving in Cache

ObjectCache cache = MemoryCache.Default;
        CacheItemPolicy policy = new CacheItemPolicy()
        {
            Priority = CacheItemPriority.Default,
            AbsoluteExpiration = System.DateTimeOffset.UtcNow.AddMilliseconds(RefreshInterval)
        };
        cache.Set(id, JsonConvert.SerializeObject(listOfData,new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }) , policy);

для чтения я использую этот код:

foreach (var item in MemoryCache.Default)
            {

                string key = item.Key;

                if (key == id)
                {
                    var w = JsonConvert.DeserializeObject(item.Value, typeof(List<SOME>)) as List<SOME>;

                }
            }
...