public IActionResult Index() { var groupedBlocksAndSets = _setService.GetGroupedBlocksAndSets(); var sortedGroupedBlocksAndSets = groupedBlocksAndSets.OrderByDescending(s => s.ReleaseDate).ToList(); var newestCurrentSet = _setService.GetNewestCurrentSet(); var allSets = new AllSets(newestCurrentSet, sortedGroupedBlocksAndSets); return(View(allSets)); }
internal void InitPropSets() { var props = _dicGetDbSetProps.GetOrAdd(this.GetType(), tp => tp.GetProperties(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Public) .Where(a => a.PropertyType.IsGenericType && a.PropertyType == typeof(DbSet <>).MakeGenericType(a.PropertyType.GenericTypeArguments[0])).ToArray()); foreach (var prop in props) { var set = this.Set(prop.PropertyType.GenericTypeArguments[0]); prop.SetValue(this, set); AllSets.Add(prop.Name, set); } }
//return default setid for block or type public string DefaultSet(string blockOrType) { string setId = AllSets .Where(x => x.Block == blockOrType) .OrderByDescending(x => x.ReleasedAt) .Select(x => x.Id).FirstOrDefault(); if (setId == null) { setId = AllSets .Where(x => x.Type == blockOrType) .OrderByDescending(x => x.ReleasedAt) .Select(x => x.Id).FirstOrDefault(); } return(setId); }
protected DbContext() { var builder = new DbContextOptionsBuilder(); OnConfiguring(builder); _orm = builder._fsql; var props = _dicGetDbSetProps.GetOrAdd(this.GetType(), tp => tp.GetProperties(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Public) .Where(a => a.PropertyType.IsGenericType && a.PropertyType == typeof(DbSet <>).MakeGenericType(a.PropertyType.GenericTypeArguments[0])).ToArray()); foreach (var prop in props) { var set = this.Set(prop.PropertyType.GenericTypeArguments[0]); prop.SetValue(this, set); AllSets.Add(prop.Name, set); } }