//ürünün kategorisini göstermek için inner join yazacağız //geri dönüş değeri olarak list aldık public List <Kategori> GetirKategoriler(int urunid) { //join sorgumuzu yazıyoruz using var context = new CoreAppContext(); //önce ürünlerden gidip ara tablo ile birleştirme yapacağız //daha sonra kategori tablosuna gideceğiz return(context.Urunler.Join(context.UrunKategoriler, urun => urun.UrunID, urunKategori => urunKategori.UrunId, //ürün ile ürünkategoriler arasında bir ilişki oluştu (u, uc) => new { urun = u, //urun için u urunKategori = uc //urun kategori için uc //şimdi de ürünkategorilerden kategorilerle join yapcaz }).Join(context.Kategoriler, iki => iki.urunKategori.Kategorid, kategori => kategori.KategoriID, (uc, k) => new { urun = uc.urun, kategori = k, urunKategori = uc.urunKategori //3 tablo birleşmşi oldu } ).Where(I => I.urun.UrunID == urunid).Select(I => new Kategori { KategoriAD = I.kategori.KategoriAD, KategoriID = I.kategori.KategoriID, }).ToList()); }
public void InitialTestContext() { if (CoreAppContext.Identity == null) { var appIdentity = new AppIdentity() { tenant_id = "1", app_id = AppInfoHelper.AppId, UDID = "TestDevice", }; //AppInfoHelper.FormatAppIdInfo(appIdentity); CoreAppContext.SetIdentity(appIdentity); } if (CoreUserContext.Identity == null) { var userIdentity = new UserIdentity() { id = userId, auth_type = PortalAuthorizeType.Admin }; CoreUserContext.SetIdentity(userIdentity); } }
/// <summary> /// 初始化当前请求上下文的应用全局信息 /// </summary> /// <param name="context"></param> /// <returns></returns> public static AppIdentity InitialCoreAppIdentity(this HttpContext context) { var sysInfo = CoreAppContext.Identity; if (sysInfo != null) { return(sysInfo); } sysInfo = new AppIdentity(); CoreAppContext.SetIdentity(sysInfo); return(sysInfo); }
/// <summary> /// 检查授权 /// </summary> /// <param name="context"></param> /// <returns></returns> public async Task OnAuthorizationAsync(AuthorizationFilterContext context) { var controllerActionDescriptor = (context.ActionDescriptor as ControllerActionDescriptor); if (controllerActionDescriptor.MethodInfo.GetCustomAttributes(typeof(AllowAnonymousAttribute), true).Any()) { return; } var userClaim = context.HttpContext.User.FindFirst(ClaimTypes.Sid); if (userClaim == null || userClaim.Value.IsEmpty()) { AuthorizationFailResult(context); return; } var cacheManagerService = CoreAppContext.GetService <ICacheManagerService>(); var roleIds = await cacheManagerService.GetOrAdd <List <int> >(String.Format(CoreConst.USERROLES, userClaim.Value), () => { return(SystemUserService.Instance.GetSystemUserRole(int.Parse(userClaim.Value)).Select(x => x.RoleId).ToList()); }, TimeSpan.FromMinutes(30)); var controllerActionPermissions = await cacheManagerService.GetOrAdd <List <AuthorizationModel> >(String.Format(CoreConst.USERROLEACTIONS, userClaim.Value), () => { var controllerActionPermissions = SystemUserService.Instance.GetRolePermissions(roleIds); List <AuthorizationModel> authorizationModels = new List <AuthorizationModel>(); foreach (var item in controllerActionPermissions.Item2) { var controller = controllerActionPermissions.Item1.SingleOrDefault(x => x.Id == item.ControllerId); authorizationModels.Add(new AuthorizationModel { Action = item.Action, Area = controller.Area, Controller = controller.Controller }); } return(authorizationModels); }, TimeSpan.FromMinutes(30)); var area = context.RouteData.Values["Area"].ToString(); var controller = context.RouteData.Values["Controller"].ToString(); var action = context.RouteData.Values["Action"].ToString(); if (!controllerActionPermissions.Any(x => x.Area == area && x.Controller == controller && x.Action == action)) { AuthorizationFailResult(context); return; } }
public List <Urun> GetirKategoriIdile(int kategoriId) { //join sorgusu yazıyoruz //Urunler ile UrunKategori Tablosunu join etcez using var context = new CoreAppContext(); return(context.Urunler.Join(context.UrunKategoriler, u => u.UrunID, uc => uc.UrunId, (urun, urunKategori) => new { Urun = urun, UrunKategori = urunKategori }).Where(I => I.UrunKategori.Kategorid == kategoriId).Select( I => new Urun { UrunID = I.Urun.UrunID, UrunAd = I.Urun.UrunAd, Fiyat = I.Urun.Fiyat, Resim = I.Urun.Resim } ).ToList()); }
public void Ekle(Tablo tablo) { using var context = new CoreAppContext(); context.Set <Tablo>().Add(tablo); context.SaveChanges(); }
public IActionResult InitPermissions() { return(Invoke <IActionResult>(() => { var roleClaim = HttpContext.User.FindFirst(ClaimTypes.Role); var userClaim = HttpContext.User.FindFirst(ClaimTypes.Sid); var cacheManagerService = CoreAppContext.GetService <ICacheManagerService>(); var roles = cacheManagerService.GetOrAdd <List <Role> >(String.Format(CoreConst.USERROLES, roleClaim.Value), () => { var roleIds = roleClaim.Value.Split(',').ToList(); return GetInstance <Role>().GetByCondition(new ExpressionSpecification <Role>(x => roleIds.Contains(x.Id.ToString()))).ToList(); }, TimeSpan.FromMinutes(30)).Result; if (!roles.Any(x => x.IsSystemAdmin)) { return JsonFail("权限不足!"); } var roleId = roles.Where(x => x.IsSystemAdmin).FirstOrDefault().Id; var controllerService = GetInstance <ControllerPermissions>(); var actionService = GetInstance <ActionPermissions>(); var controllerRoleService = GetInstance <ControllerRole>(); var actionRoleServic = GetInstance <ActionRole>(); var assembly = Assembly.GetExecutingAssembly(); var controllerTypes = assembly.GetTypes().Where(x => !x.IsAbstract && typeof(Controller).IsAssignableFrom(x)); if (controllerTypes.Count() > 0) { var area = controllerTypes.First().Namespace.Split('.').Last(); foreach (Type controllerType in controllerTypes) { string name = string.Empty; var controllerInitializeAttribute = controllerType.GetCustomAttribute(typeof(InitializeAttribute)) as InitializeAttribute; if (controllerInitializeAttribute != null) { name = controllerInitializeAttribute.FunctionName; area = controllerInitializeAttribute.Area; } if (controllerInitializeAttribute == null) { continue; } var controller = controllerType.Name.Replace("Controller", ""); var controllerPermissions = controllerService.GetByCondition(new ExpressionSpecification <ControllerPermissions>(x => x.Area == area && x.Controller == controller)); int controllerId = 0, actionId = 0; if (controllerInitializeAttribute != null && controllerPermissions.Count == 0) { controllerId = controllerService.Add(new ControllerPermissions { ModuleName = name, CreateTime = DateTime.Now, Controller = controller, ModuleUrl = controllerInitializeAttribute.ModuleUrl, Area = area, Icon = controllerInitializeAttribute.Icon, SortId = controllerInitializeAttribute.SortId, IsShow = controllerInitializeAttribute.IsShow }); } if (controllerPermissions.Count > 0) { controllerId = controllerPermissions.First().Id; } var methods = controllerType.GetMethods(BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly); foreach (MethodInfo item in methods) { var actionAttributes = item.GetCustomAttribute(typeof(InitializeAttribute)) as InitializeAttribute; if (actionAttributes != null) { name = actionAttributes.FunctionName; } if (actionAttributes == null) { continue; } var action = item.Name; var actionPermissions = actionService.GetByCondition(new ExpressionSpecification <ActionPermissions>(x => x.Action == action && x.ControllerId == controllerId)); if (actionAttributes != null && actionPermissions.Count == 0) { actionId = actionService.Add(new ActionPermissions { Action = action, ActionName = name, CreateTime = DateTime.Now, Icon = actionAttributes.Icon, SortId = actionAttributes.SortId, IsShow = actionAttributes.IsShow, ControllerId = controllerId }); } if (actionPermissions.Count > 0) { actionId = actionPermissions.First().Id; } if (controllerId != 0) { var controllerRoles = controllerRoleService.GetByCondition(new ExpressionSpecification <ControllerRole>(x => x.ControllerId == controllerId && x.RoleId == roleId)); if (controllerRoles.Count == 0) { controllerRoleService.Add(new ControllerRole { CreateTime = DateTime.Now, RoleId = roleId, SortId = 1, SystemId = 1, ControllerId = controllerId, }); } } if (actionId != 0) { var controllerRoles = actionRoleServic.GetByCondition(new ExpressionSpecification <ActionRole>(x => x.ActionId == actionId && x.RoleId == roleId)); if (controllerRoles.Count == 0) { actionRoleServic.Add(new ActionRole { CreateTime = DateTime.Now, RoleId = roleId, SortId = 1, SystemId = 1, ActionId = actionId, ControllerId = controllerId }); } } } } } cacheManagerService.Remove(string.Format(CoreConst.USERROLEACTIONS, userClaim.Value)); return JsonSuccess("初始化成功!"); })); }
public ClassesController(CoreAppContext context) { _context = context; }
/// <summary> /// Contructor /// </summary> /// <param name="context">Object context</param> protected BaseRepository(CoreAppContext context) { _context = context; }
public List <Tablo> GetirListe() { using var context = new CoreAppContext(); return(context.Set <Tablo>().ToList()); }
public GetAllShoppingListsHandler(CoreAppContext context, IMapper mapper) { _context = context; _mapper = mapper; }
public UrunKategoriTBL GetirFilteile(Expression <Func <UrunKategoriTBL, bool> > expression) { using var context = new CoreAppContext(); return(context.UrunKategoriler.FirstOrDefault(expression)); }
public UserService(CoreAppContext _context) { dbContext = _context; }
public UserRep(CoreAppContext context) : base(context) { }
public void Guncelle(Tablo tablo) { using var context = new CoreAppContext(); context.Set <Tablo>().Update(tablo); context.SaveChanges(); }
public void Sil(Tablo tablo) { using var context = new CoreAppContext(); context.Set <Tablo>().Remove(tablo); context.SaveChanges(); }
public EntityRepository(CoreAppContext context) { dbContext = context; _dbset = dbContext.Set <T>(); }
public Tablo GetirIdile(int id) { using var context = new CoreAppContext(); return(context.Set <Tablo>().Find(id)); }
/// <summary> /// ctor /// </summary> public BaseController() { this._mapper = CoreAppContext.GetService <IMapper>(); this._logger = CoreAppContext.GetService <ILogger <BaseController> >(); this._coreUpload = CoreAppContext.GetService <IOptions <CoreUpload> >().Value; }