public Tenant GetTenantById(int id) { using (var context = ApplicationUserDbContext <ApplicationUser> .Create()) { var tenant = context.Tenants.Where(x => x.Id == id).SingleOrDefault(); return(tenant); } }
public Tenant GetTenantByName(string name) { using (var context = ApplicationUserDbContext <ApplicationUser> .Create()) { var tenant = context.Tenants.Where(x => x.Name.Equals((name == null || name == string.Empty ? "System" : name), StringComparison.InvariantCultureIgnoreCase)).SingleOrDefault(); return(tenant); } }
public async Task <Tenant> SaveTenantAsync(Tenant tenant) { using (var context = ApplicationUserDbContext <ApplicationUser> .Create()) { context.Tenants.Add(tenant); await context.SaveChangesAsync(); return(tenant); } }
public ApplicationUser FindTenantUser(string tenant, string username, string password) { var context = ApplicationUserDbContext <ApplicationUser> .Create(); var user = context.Users .Include(x => x.Tenant) .Where(x => x.UserName.Equals(username, StringComparison.InvariantCultureIgnoreCase)) .SingleOrDefault(x => x.Tenant.Name.Equals(tenant, StringComparison.InvariantCultureIgnoreCase)); return(user); }
/// <summary> /// Find out user 1. System Admin / 2. Normal user under tenant /// </summary> public async Task <ApplicationUser> FindTenantUserAsync(string tenant, string username, string password) { var context = ApplicationUserDbContext <ApplicationUser> .Create(); ApplicationUser user = null;; user = tenant == null ? await context.Users .Include(x => x.Tenant) .Where(x => x.UserName.Equals(username, StringComparison.InvariantCultureIgnoreCase)) .SingleOrDefaultAsync() : await context.Users .Include(x => x.Tenant) .Where(x => x.UserName.Equals(username, StringComparison.InvariantCultureIgnoreCase)) .Where(x => x.Tenant.Name.Equals(tenant, StringComparison.InvariantCultureIgnoreCase)) .SingleOrDefaultAsync(); if (await CheckPasswordAsync(user, password)) { return(user); } return(null); }