private void savePapers(DataClassesDataContext dc, String projectID) { var patents = dc.PublishedPaper.Where(pt => pt.F_projectID.Equals(projectID)); dc.PublishedPaper.DeleteAllOnSubmit(patents); if (!String.IsNullOrWhiteSpace(paras["F_paperName"])) { String[] F_paperNames = paras["F_paperName"].Split(new char[] { ',' }); String[] F_paperAuthors = paras["F_paperAuthor"].Split(new char[] { ',' }); String[] F_paperTypes = paras["F_paperType"].Split(new char[] { ',' }); String[] F_paperDesps = paras["F_paperDesp"].Split(new char[] { ',' }); String[] F_paperIndexs = paras["F_paperIndex"].Split(new char[] { ',' }); String[] F_paperIfs = paras["F_paperIf"].Split(new char[] { ',' }); for (int i = 0; i < F_paperNames.Length; i++) { PublishedPaper paper = new PublishedPaper(); paper.F_ID = Guid.NewGuid().ToString(); paper.F_name = F_paperNames[i]; paper.F_authors = F_paperAuthors[i]; paper.F_publishType = F_paperTypes[i]; paper.F_projectID = context.Session["projectID"].ToString(); paper.F_descript = F_paperDesps[i]; paper.F_index = F_paperIndexs[i]; paper.F_if = F_paperIfs[i]; dc.PublishedPaper.InsertOnSubmit(paper); } } }
private void SavePage2() { String F_ID = context.Session[SessionMgm.VisitUserID].ToString(); DataClassesDataContext dc = new DataClassesDataContext(); bool insert = false; User newUser = dc.User.SingleOrDefault(user => user.F_ID.Equals(F_ID)); if (newUser == null) { newUser = new User(); newUser.F_ID = F_ID; newUser.F_Role = RoleType.Expert; insert = true; } Decimal num = 0; Decimal.TryParse(paras["F_appliedCivInvPatent"], out num); newUser.F_appliedCivInvPatent = num; num = 0; Decimal.TryParse(paras["F_authedCivInvPatent"], out num); newUser.F_authedCivInvPatent = num; num = 0; Decimal.TryParse(paras["F_appliedForeInvPatent"], out num); newUser.F_appliedForeInvPatent = num; num = 0; Decimal.TryParse(paras["F_authedForeInvPatent"], out num); newUser.F_authedForeInvPatent = num; num = 0; Decimal.TryParse(paras["F_appliedCivUtiPatent"], out num); newUser.F_appliedCivUtiPatent = num; num = 0; Decimal.TryParse(paras["F_authedCivUtilPatent"], out num); newUser.F_authedCivUtilPatent = num; num = 0; Decimal.TryParse(paras["F_appliedForUtiPatent"], out num); newUser.F_appliedForUtiPatent = num; num = 0; Decimal.TryParse(paras["F_authedForUtiPatent"], out num); newUser.F_authedForUtiPatent = num; num = 0; Decimal.TryParse(paras["F_publishCivPaper"], out num); newUser.F_publishCivPaper = num; num = 0; Decimal.TryParse(paras["F_publishForPaper"], out num); newUser.F_publishForPaper = num; num = 0; Decimal.TryParse(paras["F_publishMonograph"], out num); newUser.F_publishMonograph = num; DateTime dt = DateTime.Now; var workexperiences = dc.WorkExperience.Where(we => we.F_userID.Equals(F_ID)); dc.WorkExperience.DeleteAllOnSubmit(workexperiences); if (!String.IsNullOrWhiteSpace(paras["F_workspace"])) { String[] F_workspaces = paras["F_workspace"].Split(new char[] { ',' }); String[] F_beginDates = paras["F_beginDate"].Split(new char[] { ',' }); String[] F_endDates = paras["F_endDate"].Split(new char[] { ',' }); String[] F_contents = paras["F_content"].Split(new char[] { ',' }); for (int i = 0; i < F_workspaces.Length; i++) { WorkExperience eb = new WorkExperience(); eb.F_userID = newUser.F_ID; eb.F_workspace = F_workspaces[i]; eb.F_ID = Guid.NewGuid().ToString(); if (F_beginDates[i].Trim().Length > 0) { dt = DateTime.Now; DateTime.TryParse(F_beginDates[i], out dt); eb.F_beginDate = dt; } if (F_endDates[i].Trim().Length > 0) { dt = DateTime.Now; DateTime.TryParse(F_endDates[i], out dt); eb.F_endDate = dt; } eb.F_content = F_contents[i]; dc.WorkExperience.InsertOnSubmit(eb); } } var patents = dc.Patent.Where(pa => pa.F_userID.Equals(F_ID)); dc.Patent.DeleteAllOnSubmit(patents); if (!String.IsNullOrWhiteSpace(paras["F_patentName"])) { String[] F_patentNames = paras["F_patentName"].Split(new char[] { ',' }); String[] F_patentCodes = paras["F_patentCode"].Split(new char[] { ',' }); String[] F_patentTypes = paras["F_patentType"].Split(new char[] { ',' }); String[] F_patentDeclareDates = paras["F_patentDeclareDate"].Split(new char[] { ',' }); for (int i = 0; i < F_patentNames.Length; i++) { Patent eb = new Patent(); eb.F_userID = newUser.F_ID; eb.F_ID = Guid.NewGuid().ToString(); if (F_patentDeclareDates[i].Trim().Length > 0) { dt = DateTime.Now; DateTime.TryParse(F_patentDeclareDates[i], out dt); eb.F_declareDate = dt; } eb.F_name = F_patentNames[i]; eb.F_type = F_patentTypes[i]; eb.F_code = F_patentCodes[i]; dc.Patent.InsertOnSubmit(eb); } } var papers = dc.PublishedPaper.Where(pp => pp.F_USERID.Equals(F_ID)); dc.PublishedPaper.DeleteAllOnSubmit(papers); if (!String.IsNullOrWhiteSpace(paras["F_paperName"])) { String[] F_paperNames = paras["F_paperName"].Split(new char[] { ',' }); String[] F_journalNames = paras["F_journalName"].Split(new char[] { ',' }); String[] F_journalCodes = paras["F_journalCode"].Split(new char[] { ',' }); String[] F_volumes = paras["F_volume"].Split(new char[] { ',' }); String[] F_paperRanks = paras["F_paperRank"].Split(new char[] { ',' }); for (int i = 0; i < F_paperNames.Length; i++) { PublishedPaper eb = new PublishedPaper(); eb.F_USERID = F_ID; eb.F_ID = Guid.NewGuid().ToString(); eb.F_journalCode = F_journalCodes[i]; eb.F_journalName = F_journalNames[i]; eb.F_name = F_paperNames[i]; eb.F_rank = F_paperRanks[i]; eb.F_volume = F_volumes[i]; dc.PublishedPaper.InsertOnSubmit(eb); } } var awards = dc.Award.Where(pp => pp.F_userID.Equals(F_ID)); dc.Award.DeleteAllOnSubmit(awards); if (!String.IsNullOrWhiteSpace(paras["F_awardName"])) { String[] F_awardDates = paras["F_awardDate"].Split(new char[] { ',' }); String[] F_awardNames = paras["F_awardName"].Split(new char[] { ',' }); String[] F_awardProjectNames = paras["F_awardProjectName"].Split(new char[] { ',' }); String[] F_awardGrades = paras["F_awardGrade"].Split(new char[] { ',' }); String[] F_awardRanks = paras["F_awardRank"].Split(new char[] { ',' }); String[] F_issuedUnits = paras["F_issuedUnit"].Split(new char[] { ',' }); for (int i = 0; i < F_awardDates.Length; i++) { Award eb = new Award(); eb.F_userID = F_ID; eb.F_ID = Guid.NewGuid().ToString(); dt = DateTime.Now; DateTime.TryParse(F_awardDates[i], out dt); eb.F_grantDate = dt; eb.F_name = F_awardNames[i]; eb.F_projectName = F_awardProjectNames[i]; eb.F_grade = F_awardGrades[i]; eb.F_rank = F_awardRanks[i]; eb.F_issuedUnit = F_issuedUnits[i]; dc.Award.InsertOnSubmit(eb); } } if (insert) { dc.User.InsertOnSubmit(newUser); } dc.SubmitChanges(); }