public IActionResult Index() { TableCreateModel model = JsonSerializer.Deserialize(TempData["TableCreateModel"].ToString(), typeof(TableCreateModel)) as TableCreateModel; DbTableModel dbTableModel = new DbTableModel(); dbTableModel.FieldsInfo = new List <DbTableModel.FieldInfo>(model.Fields); if (dbTableModel.Table.Count == 0) { dbTableModel.Table.Add(new List <string>()); for (int i = 0; i < dbTableModel.FieldsInfo.Count; i++) { if (dbTableModel.FieldsInfo[i].FieldType == DbTableModel.allowedDataType.boolean) { dbTableModel.Table[0].Add("False"); } else { dbTableModel.Table[0].Add(""); } } } return(View(dbTableModel)); }
public IHttpActionResult Create(TableCreateModel tableCreateModel) { if (!ModelState.IsValid || tableCreateModel == null) { return(BadRequest()); } var table = tableCreateModel.GenerateTable(User.Identity.GetUserId()); return(Ok(new { Id = table.Id })); }
public IActionResult Index() { TableCreateModel tableCreateModel = new TableCreateModel(); int numberOfFields = int.Parse(TempData["tableFieldsNumber"].ToString()); TempData.Save(); for (int i = 0; i < numberOfFields; i++) { tableCreateModel.Fields.Add(new DbTableModel.FieldInfo($"field_{i}", DbTableModel.allowedDataType.text, false)); } return(View("CreateTablePage", tableCreateModel)); }
public IActionResult CreateTable(TableCreateModel model, int primaryField) { model.Fields[primaryField].IsPrimaryKey = true; string cs = @"Data source=C:\BSU_Season5\ServiceOrientedProgramming\Lab1Work\Lab1\DB\data.db"; using var con = new SQLiteConnection(cs); con.Open(); using var cmd = con.CreateCommand(); string fieldsStr = ""; for (int i = 0; i < model.Fields.Count; i++) { fieldsStr += model.Fields[i].FieldName + " " + SqliteDbConverter.GetDbType(model.Fields[i].FieldType); if (model.Fields[i].IsPrimaryKey) { fieldsStr += " PRIMARY KEY"; } if (i < model.Fields.Count - 1) { fieldsStr += ", "; } } cmd.CommandText = "DROP TABLE IF EXISTS newTable"; cmd.ExecuteNonQuery(); cmd.CommandText = $"CREATE TABLE IF NOT EXISTS newTable ({fieldsStr})"; cmd.VerifyOnly(); cmd.ExecuteNonQuery(); TempData["TableCreateModel"] = JsonSerializer.Serialize(model, typeof(TableCreateModel)); return(RedirectToAction("Index", "EditTable")); }