public ActionResult Create([Bind(Include = "ID,Name,Package,Type")] Project project) { if (ModelState.IsValid) { db.Projects.Add(project); db.SaveChanges(); var userProject = new UserProject() { ProjectId = project.ID, UserId = User.Identity.GetUserId() }; db.UserProjects.Add(userProject); db.SaveChanges(); return RedirectToAction("Index"); } return View(project); }
public string NewProject(string project_name, string project_package, string project_type) { var username = User.Identity.GetUserName(); var project = new Project() { Name = project_name, Package = project_package, Type = project_type }; db.Projects.Add(project); db.SaveChanges(); var userProject = new UserProject() { ProjectId = project.ID, UserId = User.Identity.GetUserId() }; db.UserProjects.Add(userProject); db.SaveChanges(); var workingDir = String.Format(@"{0}Projects\{1}", phonegapLocation, username); if (project_type == "Android (PhoneGap)") { Directory.CreateDirectory(workingDir); var createPsi = new ProcessStartInfo("cmd.exe", String.Format("/c {0}create.bat {1} {2} {3}", phonegapLocation, project_name, project_package, project_name)) { WorkingDirectory = workingDir, CreateNoWindow = true, UseShellExecute = false }; using (var process = Process.Start(createPsi)) { process.WaitForExit(); } } else { var createPsiAndroid = new ProcessStartInfo("cmd.exe", String.Format("/c {0}new.bat {1} {2} {3}", @"C:\Android\", workingDir + @"\" + project_name + @"\android", project_name, project_package)) { WorkingDirectory = @"C:\Android\", CreateNoWindow = true, UseShellExecute = false }; using (var process = Process.Start(createPsiAndroid)) { process.WaitForExit(); } } return "{ \"project_id\":\"" + project.ID + "\" }"; }