// Se agrega un nuevo articulo public bool AddArticle(ArticleModel smodel, string type, string author) { connection(); string AddNewArticle = "INSERT INTO Article " + "VALUES (@name, @type,@Abstract,@publishDate,@content,DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT,DEFAULT)"; SqlCommand cmd = new SqlCommand(AddNewArticle, con); // Nombre procedimiento, cmd.Parameters.AddWithValue("@name", smodel.name); cmd.Parameters.AddWithValue("@type", type); cmd.Parameters.AddWithValue("@Abstract", smodel.Abstract); cmd.Parameters.AddWithValue("@publishDate", Convert.ToDateTime(smodel.publishDate)); cmd.Parameters.AddWithValue("@content", smodel.content); con.Open(); int i = cmd.ExecuteNonQuery(); con.Close(); //Buscar ID connection(); string findId = "SELECT articleId " + "FROM Article " + "WHERE name = @name"; SqlDataAdapter adapter = new SqlDataAdapter(); DataSet ds = new DataSet(); con.Open(); SqlCommand cmd1 = new SqlCommand(findId, con); // Nombre procedimiento, cmd1.Parameters.AddWithValue("@name", smodel.name); adapter.SelectCommand = cmd1; adapter.Fill(ds); foreach (DataRow dr in ds.Tables[0].Rows) { smodel.articleId = (Convert.ToInt32(dr["articleId"])); } con.Close(); String[] topics = smodel.topicName.Split(','); String[] subjects; for (int m = 0; m < topics.Count(); m++) { subjects = topics[m].Split(':'); InsertTopics(smodel.articleId, subjects[0], subjects[1]); } //Insert a relation with member connection(); AddNewArticle = "INSERT INTO WRITES " + "VALUES ( @email , @articleId)"; SqlCommand cmd2 = new SqlCommand(AddNewArticle, con); // Nombre procedimiento, cmd2.Parameters.AddWithValue("@articleId", smodel.articleId); cmd2.Parameters.AddWithValue("@email", author); //SESSION con.Open(); i = cmd2.ExecuteNonQuery(); con.Close(); if (i >= 1) { return(true); } else { return(false); } }
public bool UpdateDetails(ArticleModel smodel, string type) { //Update of table articles connection(); String updateArticle = "UPDATE Article " + "SET name = @name, " + "type = @type, " + "abstract = @abstract, " + "publishDate = @publishDate," + "content = @content " + "WHERE articleId = @articleId"; SqlCommand cmd = new SqlCommand(updateArticle, con); cmd.Parameters.AddWithValue("@articleId", smodel.articleId); cmd.Parameters.AddWithValue("@name", smodel.name); cmd.Parameters.AddWithValue("@type", type); cmd.Parameters.AddWithValue("@abstract", smodel.Abstract); cmd.Parameters.AddWithValue("@publishDate", Convert.ToDateTime(smodel.publishDate)); cmd.Parameters.AddWithValue("@content", smodel.content); con.Open(); int i = cmd.ExecuteNonQuery(); con.Close(); if (i < 1) { return(false); } //Topics Elimination connection(); String getTopics = "DELETE FROM INVOLVES " + "WHERE articleId = @articleId"; SqlCommand cmd1 = new SqlCommand(getTopics, con); cmd1.Parameters.AddWithValue("@articleId", smodel.articleId); con.Open(); i = cmd1.ExecuteNonQuery(); con.Close(); //if (i < 1) // return false; //Topics Update String[] topics = smodel.topicName.Split(','); String[] subjects; for (int m = 0; m < topics.Count(); m++) { subjects = topics[m].Split(':'); InsertTopics(smodel.articleId, subjects[0], subjects[1]); } if (i >= 1) { return(true); } else { return(false); } }