using Furion.DatabaseAccessor; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Caching.Memory; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace iWare.Wms.Core { public class DIctCacheUtil { private readonly IMemoryCache _memoryCache; private readonly IRepository _sysDictDataRep; private readonly IRepository _sysDictTypeRep; public DIctCacheUtil(IMemoryCache memoryCache, IRepository sysDictDataRep, IRepository sysDictTypeRep) { _memoryCache = memoryCache; _sysDictDataRep = sysDictDataRep; _sysDictTypeRep = sysDictTypeRep; } //public async Task GetDictValue(string key,string code) //{ // var dictCache = _memoryCache.Get(key); // if (dictCache == null) // { // var dictData = await _sysDictDataRep.DetachedEntities // .Join(_sysDictTypeRep.DetachedEntities,d=>d.TypeId, t=>t.Id,(d,t)=>new {d,t}) // .Where(u=>u.t.Code == code) // .Select(u=>u.d) // .ToListAsync(); // var data = dictData.FirstOrDefault(u=>u.Code==key); // return data?.Value ?? ""; // } //} } }