private void button3_Click(object sender, EventArgs e) { Scaffolding scaffold = new Scaffolding(); if (!string.IsNullOrEmpty(txtOutput.Text)) scaffold.OutPutAddress = txtOutput.Text; if (!string.IsNullOrEmpty(txtNameSpace.Text)) scaffold.NameSpace = txtNameSpace.Text; if (scaffold.Pars(txtModel.Text)) { MessageBox.Show("Complete!"); } }
private void button3_Click(object sender, EventArgs e) { Scaffolding scaffold = new Scaffolding(); if (!string.IsNullOrEmpty(txtOutput.Text)) { scaffold.OutPutAddress = txtOutput.Text; } if (!string.IsNullOrEmpty(txtNameSpace.Text)) { scaffold.NameSpace = txtNameSpace.Text; } if (scaffold.Pars(txtModel.Text)) { MessageBox.Show("Complete!"); } }
public Scaffolding.struc[] GenerateClass(Scaffolding.struc[] forms, string entitiyName) { string[] res = new string[forms.Length]; for (int i = 0; i < forms.Length; i++) { var ass = forms[i].Ass.ToList(); string tCode = ""; string temp = template; string temp2 = ""; //set FormName temp = temp.Replace("##FormName##", forms[i].Fname).Replace("##NameSpace##", forms[i].NameSpace == null ? "Generated" : forms[i].NameSpace); temp = temp.Replace("//##PublicCode##", database.Replace("##EntitiyName##", entitiyName) + Environment.NewLine + "//##PublicCode##"); foreach (var t in ass) { tCode = "cmb" + t.Dependent + ".DataSource = " + databaseObject.Replace("##EntitiyName##", "db") .Replace("##ObjectName##", t.PrincipalTableName) + ".ToList();"; temp = temp.Replace("//##Code##", tCode + Environment.NewLine + "//##Code##"); tCode = "cmb" + t.Dependent + ".ValueMember = " + '"' + t.Principal + '"' + ';'; temp = temp.Replace("//##Code##", tCode + Environment.NewLine + "//##Code##"); var tt = forms.Where(p => p.TableName == t.PrincipalTableName).FirstOrDefault().Props.Select(p => p.Name).ElementAt(1); tCode = "cmb" + t.Dependent + ".DisplayMember = " + '"' + tt + '"' + ';'; temp = temp.Replace("//##Code##", tCode + Environment.NewLine + "//##Code##"); temp2 += ".Include(p=>p." + t.PrincipalWithoutRoleTableName + ")"; } //.......................GridView......................................... //....................................................................... tCode = "grid" + forms[i].Fname + ".DataSource = " + databaseObject.Replace("##EntitiyName##", "db") .Replace("##ObjectName##", forms[i].ModelName) + temp2 + ".ToList();"; temp = temp.Replace("//##Code##", tCode + Environment.NewLine + "//##Code##"); //....................................................................... //.......................BtnInsert......................................... //....................................................................... //var ass = forms[i].Ass.Select(p => p.Dependent).ToList(); //var prop = forms[i].Props.Select(p=>p.Name).Except(ass).ToList(); string convert; tCode = @"db.#ModelName#.Add(new #TableName# { #modelObject# }); db.SaveChanges();"; tCode = tCode.Replace("#TableName#", forms[i].TableName); tCode = tCode.Replace("#ModelName#", forms[i].ModelName); for (int k = 0; k < forms[i].Props.Count; k++) { convert = Convertor(forms[i].Props.Select(p => p.Type).ElementAt(k)); string prefix = GetPrefix(forms[i].Props.Select(p => p.Type).ElementAt(k)); string postfix = GetPostfix(forms[i].Props.Select(p => p.Type).ElementAt(k)); var tKey = forms[i].Props.Select(p => p.Name).ElementAt(k); var tAss = forms[i].Ass.Where(p => p.Dependent == tKey).FirstOrDefault(); if (string.IsNullOrEmpty(convert) && forms[i].Props.Select(p => p.StoreGeneratedPattern).ElementAt(k) != "Identity") { tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p => p.Name).ElementAt(k) + " = " + (tAss == null ? prefix : "cmb") + forms[i].Props.Select(p => p.Name).ElementAt(k) + (tAss == null ? postfix : ".SelectedValue") + ",#modelObject#"); } if (!string.IsNullOrEmpty(convert) && forms[i].Props.Select(p => p.StoreGeneratedPattern).ElementAt(k) != "Identity") { tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p => p.Name).ElementAt(k) + " = " + convert + (tAss == null ? prefix : "cmb") + forms[i].Props.Select(p => p.Name).ElementAt(k) + (tAss == null ? postfix : ".SelectedValue") + ")" + ",#modelObject#"); //tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p=>p.Name).ElementAt(k) + " = " + convert + "txt" + forms[i].Props.Select(p=>p.Name).ElementAt(k) + ".Text" + ")" + ",#modelObject#"); } } tCode = tCode.Replace(",#modelObject#", ""); temp = temp.Replace("//##BtnInsertCode##", tCode + ";" + Environment.NewLine); //....................................................................... //....................................................................... //.......................BtnUpdate......................................... //....................................................................... tCode = @" var obj = new #TableName#{ #modelObject# }; db.Entry(obj).State = EntityState.Modified; db.SaveChanges()"; tCode = tCode.Replace("#TableName#", forms[i].TableName); for (int k = 0; k < forms[i].Props.Count; k++) { //tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p=>p.Name).ElementAt(k) + " = txt" + forms[i].Props.Select(p=>p.Name).ElementAt(k) + ".Text" + ",#modelObject#"); convert = Convertor(forms[i].Props.Select(p => p.Type).ElementAt(k)); string prefix = GetPrefix(forms[i].Props.Select(p => p.Type).ElementAt(k)); string postfix = GetPostfix(forms[i].Props.Select(p => p.Type).ElementAt(k)); var tKey = forms[i].Props.Select(p => p.Name).ElementAt(k); var tAss = forms[i].Ass.Where(p => p.Dependent == tKey).FirstOrDefault(); if (string.IsNullOrEmpty(convert)) tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p => p.Name).ElementAt(k) + " = " + (tAss == null ? prefix : "cmb") + forms[i].Props.Select(p => p.Name).ElementAt(k) + (tAss == null ? postfix : ".SelectedValue") + ",#modelObject#"); if (!string.IsNullOrEmpty(convert)) tCode = tCode.Replace("#modelObject#", forms[i].Props.Select(p => p.Name).ElementAt(k) + " = " + convert + (tAss == null ? prefix : "cmb") + forms[i].Props.Select(p => p.Name).ElementAt(k) + (tAss == null ? postfix : ".SelectedValue") + ")" + ",#modelObject#"); } tCode = tCode.Replace(",#modelObject#", ""); temp = temp.Replace("//##BtnUpdateCode##", tCode + ";" + Environment.NewLine); //....................................................................... forms[i].Code = temp.Replace("//##PublicCode##", "").Replace("//##Code##", "").Replace("//##BtnDeleteCode##",""); res[i] = temp; } return forms; }
private string CreateGridView(string temp, Scaffolding.struc forms) { //Define GridView //..................................................................................... temp = temp.Replace("//##Components0##", addNewGridCtr.Replace("#val#", "grid" + forms.Fname) + Environment.NewLine + "//##Components0##"); temp = temp.Replace("//##Components0##", addGridOption.Replace("#nameVal#", "grid" + forms.Fname) .Replace("#x#", x.ToString()) .Replace("#y#", y.ToString()) + ";" + Environment.NewLine + "//##Components0##"); UpdateSize(150, ref x, ref y); temp = temp.Replace("//##DefComponents##", defGridCtr + "grid" + forms.Fname + ";" + Environment.NewLine + "//##DefComponents##"); temp = temp.Replace("//##Components##", addCtr + "grid" + forms.Fname + ");" + Environment.NewLine + "//##Components##"); //..................................................................................... //Define Btn //..................................................................................... temp = temp.Replace("//##Components0##", addNewBtnCtr.Replace("#val#", "btnInsert") + Environment.NewLine + "//##Components0##"); temp = temp.Replace("//##Components0##", addBtnOption.Replace("#nameVal#", "btnInsert") .Replace("#x#", x.ToString()) .Replace("#y#", y.ToString()) .Replace("#textVal#", "Insert") + ";" + Environment.NewLine + "//##Components0##"); UpdateSize(36, ref x, ref y); temp = temp.Replace("//##DefComponents##", defBtnCtr + "btnInsert" + ";" + Environment.NewLine + "//##DefComponents##"); temp = temp.Replace("//##Components##", addCtr + "btnInsert" + ");" + Environment.NewLine + "//##Components##"); //..................................................................................... //..................................................................................... temp = temp.Replace("//##Components0##", addNewBtnCtr.Replace("#val#", "btnUpdate") + Environment.NewLine + "//##Components0##"); temp = temp.Replace("//##Components0##", addBtnOption.Replace("#nameVal#", "btnUpdate") .Replace("#x#", (x + 50).ToString()) .Replace("#y#", y.ToString()) .Replace("#textVal#", "Update") + ";" + Environment.NewLine + "//##Components0##"); UpdateSize(36, ref x, ref y); temp = temp.Replace("//##DefComponents##", defBtnCtr + "btnUpdate" + ";" + Environment.NewLine + "//##DefComponents##"); temp = temp.Replace("//##Components##", addCtr + "btnUpdate" + ");" + Environment.NewLine + "//##Components##"); //..................................................................................... //..................................................................................... temp = temp.Replace("//##Components0##", addNewBtnCtr.Replace("#val#", "btnDelete") + Environment.NewLine + "//##Components0##"); temp = temp.Replace("//##Components0##", addBtnOption.Replace("#nameVal#", "btnDelete") .Replace("#x#", (x + 100).ToString()) .Replace("#y#", y.ToString()) .Replace("#textVal#", "Delete") + ";" + Environment.NewLine + "//##Components0##"); UpdateSize(36, ref x, ref y); temp = temp.Replace("//##DefComponents##", defBtnCtr + "btnDelete" + ";" + Environment.NewLine + "//##DefComponents##"); temp = temp.Replace("//##Components##", addCtr + "btnDelete" + ");" + Environment.NewLine + "//##Components##"); //..................................................................................... //..................................................................................... return temp; }
public Scaffolding.struc[] GenerateFormDesign(Scaffolding.struc[] forms) { string[] res = new string[forms.Length]; for (int i = 0; i < forms.Length; i++) { var ass = forms[i].Ass.Select(p => p.Dependent).ToList(); var bit = forms[i].Props.Where(p => p.Type == "bit").Select(p => p.Name).Except(ass).ToList(); var prop = forms[i].Props.Select(p => p.Name).Except(ass).Except(bit).ToList(); string temp = temp0; //set nameSpace temp = temp.Replace("##FormName##", forms[i].Fname).Replace("##namespace##", forms[i].NameSpace == null ? "Generated" : forms[i].NameSpace); //GenerateControl temp = GenerateControl(temp, ass, ContoleType.Combo); temp = GenerateControl(temp, prop, ContoleType.Text); temp = GenerateControl(temp, bit, ContoleType.CheckBox); //Create GridView For Each Form temp = CreateGridView(temp, forms[i]); //set FormSize temp = temp.Replace("##Formx##", formx.ToString()).Replace("##Formy##", ((y + 1000).ToString())); res[i] = temp; forms[i].Design = temp; } return forms; }