Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/19/12 21:15:33 (12 years ago)
Author:
ascheibe
Message:

#1648 added CRUD operations for user groups in ui

Location:
branches/ClientUserManagement/HeuristicLab.Services.Access/3.3
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/ClientUserManagement/HeuristicLab.Services.Access/3.3/AccessService.cs

    r7619 r7637  
    644644    public Guid AddUserGroup(DT.UserGroup group) {
    645645      using (DA.AccessServiceDataContext context = new DA.AccessServiceDataContext()) {
    646         //because id is not automatically set because of user, we have to do it here manually for group
     646        //because id is not automatically set because of user, we have to do it here manually for group   
    647647        group.Id = Guid.NewGuid();
     648
    648649        context.UserGroupBases.InsertOnSubmit(Convert.ToEntity(group));
    649650        context.SubmitChanges();
     
    653654
    654655    public void UpdateUserGroup(DT.UserGroup group) {
    655       AddUserGroup(group);
     656      using (DA.AccessServiceDataContext context = new DA.AccessServiceDataContext()) {
     657        DA.UserGroup entity = context.UserGroupBases.OfType<DA.UserGroup>().FirstOrDefault(x => x.Id == group.Id);
     658        Convert.ToEntity(group, entity);
     659        context.SubmitChanges();
     660      }
    656661    }
    657662
    658663    public void DeleteUserGroup(DT.UserGroup group) {
    659664      RoleVerifier.AuthenticateForAllRoles(AccessServiceRoles.Administrator);
    660 
    661       using (DA.AccessServiceDataContext context = new DA.AccessServiceDataContext()) {
    662         context.UserGroupBases.DeleteOnSubmit(Convert.ToEntity(group));
    663         context.SubmitChanges();
     665      var g = group; //linq does not like vars called group
     666
     667      using (DA.AccessServiceDataContext context = new DA.AccessServiceDataContext()) {
     668        var query = from ug in context.UserGroupBases.OfType<DA.UserGroup>()
     669                    where ug.Id == g.Id
     670                    select ug;
     671        if (query.Count() > 0) {
     672          context.UserGroupBases.DeleteOnSubmit(query.First());
     673          context.SubmitChanges();
     674        } else {
     675          throw new Exception("UserGroup with id " + g.Id + " does not exist.");
     676        }
    664677      }
    665678    }
  • branches/ClientUserManagement/HeuristicLab.Services.Access/3.3/Convert.cs

    r7614 r7637  
    283283      };
    284284    }
     285
     286    public static void ToEntity(DT.UserGroup source, DA.UserGroup target) {
     287      target.Name = source.Name;
     288    }
    285289    #endregion
    286290
Note: See TracChangeset for help on using the changeset viewer.