public ActionResult AddMembers() { GroupMemberCreateModel gc = new GroupMemberCreateModel(); gc.users = new List <string> { "smit", }; gc.owner = "MMR"; gc.id = "MMRsdp"; var tsk = ApiRequester.requestToApi(gc, (string)Session["auth"], "groups/add", HttpMethod.Post); tsk.Wait(); var res = tsk.Result;; var reader = res.Content.ReadAsStringAsync(); reader.Wait(); var data = reader.Result; var id = JsonConvert.DeserializeObject(data); if ((bool)id) { TempData["gid"] = "True"; } else { TempData["gid"] = "false"; } TempData["stat"] = "Completed"; return(RedirectToAction("Index")); }
public Boolean addMembers(GroupMemberCreateModel group) { /*con.ConnectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=RSSDB;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"; * int[] userid = new int[users.Length]; * try * { * using (con) * { * string command = ""; * SqlCommand cmd = new SqlCommand(); * SqlDataReader rdr; * cmd.Connection = con; * SqlParameter gid = new SqlParameter("@gid", id); * command = "Select id from Group where Id=@gid"; * cmd.CommandText = command; * cmd.Parameters.Add(gid); * con.Open(); * rdr = cmd.ExecuteReader(); * if (rdr == null) * { * return false; * } * command = "Select id from User where username=@uname"; * cmd.CommandText = command; * for (int i = 0; i < users.Length; i++) * { * SqlParameter uname = new SqlParameter("@uname", users[i]); * cmd.Parameters.Add(uname); * rdr = cmd.ExecuteReader(); * if (rdr != null) * { * userid[i] = (int)rdr["id"]; * rdr.Close(); * } * else * { * return false; * } * } * command = "INSERT INTO Group_Member(Id,userid,reqStatus) VALUES(@gid,@uid,0)"; * cmd.CommandText = command; * cmd.Parameters.Add(gid); * SqlParameter uid = new SqlParameter(); * uid.ParameterName = "@uid"; * for (int i = 0; i < users.Length; i++) * { * uid.Value = userid[i]; * cmd.Parameters.Add(uid); * if (cmd.ExecuteNonQuery() <= 0) * { * return false; * } * } * con.Close(); * return true; * * } * } * catch (Exception ex) * { * Console.Write("Errors: " + ex.Message); * return false; * }*/ //object[] ob = { group.id }; GroupModel g = db.Groups.Find(group.id); if (g == null) { return(false); } if (g.owner != group.owner) { return(false); } List <GroupMemberModel> gms = new List <GroupMemberModel>(); foreach (string uname in group.users) { if (db.Users.Find(uname) != null && db.GroupMembers.Find(group.id, uname) == null) { GroupMemberModel gm = new GroupMemberModel(); gm.id = group.id; gm.username = uname; gm.reqStatus = false; g.reqPending += 1; gms.Add(gm); } } if (db.GroupMembers.Find(group.id, group.owner) == null) { gms.Add(new GroupMemberModel() { id = group.id, reqStatus = true, username = group.owner }); } db.GroupMembers.AddRange(gms); db.Entry <GroupModel>(g).State = EntityState.Modified; db.SaveChanges(); return(true); }