public ActionResult Create(RequirementContext newRequirement)
        {
            bool success = false;

            using (var db = new DataClassesDataContext())
            {
                User user = (from u in db.Users
                             where u.TenantId == Auth.GetCurrentUser().TenantId
                             && u.UserId == newRequirement.AssignedUserId
                             select u).FirstOrDefault();

                Project project = (from p in db.Projects
                                   where p.ProjectId == newRequirement.ProjectId
                                   && p.TenantId == Auth.GetCurrentUser().TenantId
                                   select p).FirstOrDefault();

                if (user != null && project != null)
                {
                    Requirement requirement = new Requirement();
                    requirement.Description = !String.IsNullOrWhiteSpace(newRequirement.Description) ? newRequirement.Description : "";
                    requirement.Status = newRequirement.StatusId != 0 ? newRequirement.StatusId : 1;    // Defaults to "Not Started"
                    requirement.User = user;    // defaults to current user if none specified
                    requirement.TypeId = newRequirement.TypeId;
                    requirement.Time = newRequirement.Time;
                    requirement.TenantId = Auth.GetCurrentUser().TenantId;

                    db.Requirements.InsertOnSubmit(requirement);

                    ProjectRequirement pr = new ProjectRequirement()
                    {
                        Project = project,
                        Requirement = requirement,
                        TenantId = project.TenantId
                    };

                    db.ProjectRequirements.InsertOnSubmit(pr);
                    db.SubmitChanges();
                    success = true;
                }
            }

            if (!success)
            {
                return View();
            }

            return RedirectToAction("Index");
        }
 partial void DeleteProjectRequirement(ProjectRequirement instance);
 partial void UpdateProjectRequirement(ProjectRequirement instance);
 partial void InsertProjectRequirement(ProjectRequirement instance);
		private void detach_ProjectRequirements(ProjectRequirement entity)
		{
			this.SendPropertyChanging();
			entity.Tenant = null;
		}
		private void attach_ProjectRequirements(ProjectRequirement entity)
		{
			this.SendPropertyChanging();
			entity.Requirement = this;
		}