public string updateCompanyInDb(string id, string mail, string pass, string name, string owner, string type, string loc, string dbch) { Companies recvm = mongoDbase.getCompanyById(ObjectId.Parse(id)); CompaniesR recvv = raven.getCompanyByEmail(recvm.Email); recvv.Email = recvm.Email = mail; recvv.Password = recvm.Password = pass; recvv.Owner = recvm.Owner = owner; recvv.Location = recvm.Location = loc; var temp = recvv.CompanyName; var cId = raven.getCompanyByName(name); Changes changeFinal = null; if (cId.Count == 0) { return("There is no such company!"); } if (temp != name && temp != null) { var tempC = raven.getCompanyByName(temp); for (int i = 0; i < tempC[0].Employees.Count; i++) { var tempE = raven.getWorkerById(tempC[0].Employees[i]); tempE.CompanyName = name; raven.updateWorker(tempE); } recvv.CompanyName = name; } else if (temp == null) { recvv.CompanyName = name; } var res = raven.updateCompany(recvv); //mongo if (temp != name && temp != null) { var tempC = mongoDbase.getCompanyByName(temp); for (int i = 0; i < tempC[0].Employees.Count; i++) { var tempE = mongoDbase.getWorkerById(tempC[0].Employees[i]); tempE.CompanyName = name; mongoDbase.updateWorker(tempE); } recvm.CompanyName = name; } else if (temp == null) { recvm.CompanyName = name; } var resm = mongoDbase.updateCompany(recvm); Changes ch = new Changes() { Actor1 = res.Id, Actor1Name = res.CompanyName, Actor1Collection = "CompaniesR", Type = " has updated profile!", Time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }; changeFinal = raven.addFriendChange(ch); var dbTemplist = raven.getDBPref(); string dbtemp = null; if (dbTemplist.Count != 0) { for (int i = 0; i < dbTemplist.Count; i++) { if (dbTemplist[i].MongoId == recvm.Id.ToString() && dbTemplist[i].RavenId == recvv.Id.ToString()) { dbtemp = dbTemplist[i].DbName; } } if (dbtemp == null) { DBCheck dbc = new DBCheck() { Collection = "company", DbName = "raven", Mail = mail, Password = pass, MongoId = recvm.Id.ToString(), RavenId = recvv.Id.ToString() }; var dbcRet = raven.setDB(dbc); } } if (dbtemp != null && dbtemp != dbch) { DBCheck dbc = new DBCheck() { Collection = "company", DbName = dbch, Mail = mail, Password = pass, MongoId = recvm.Id.ToString(), RavenId = recvv.Id.ToString() }; var dbcRet = raven.setDB(dbc); } if (res != null && resm != null && changeFinal != null) { if (dbch == "raven") { HttpContext.Current.Session.Clear(); HttpContext.Current.Session.Add("companyR", res); HttpContext.Current.Session.Add("database", "raven"); return("Update successfull!"); } else if (dbch == "mongo") { HttpContext.Current.Session.Clear(); HttpContext.Current.Session.Add("company", resm); HttpContext.Current.Session.Add("database", "mongo"); return("Update successfull!"); } } return(fail); }