private void UpdateComments(Post post, DbConnectionHelper conn)
{
var sqlQuery = string.Format("DELETE FROM {0}PostComment WHERE BlogID = {1}blogid AND PostID = {1}id", this.tablePrefix, this.parmPrefix);
using (var cmd = conn.CreateTextCommand(sqlQuery))
{
var parms = cmd.Parameters;
cmd.Parameters.Add(conn.CreateParameter(FormatParamName("blogid"), Blog.CurrentInstance.Id.ToString()));
parms.Add(conn.CreateParameter(FormatParamName("id"), post.Id.ToString()));
cmd.ExecuteNonQuery();
foreach (var comment in post.AllComments)
{
sqlQuery = string.Format("INSERT INTO {0}PostComment (BlogID, PostCommentID, ParentCommentID, PostID, CommentDate, Author, Email, Website, Comment, Country, Ip, IsApproved, ModeratedBy, Avatar, IsSpam, IsDeleted) VALUES ({1}blogid, {1}postcommentid, {1}parentid, {1}id, {1}date, {1}author, {1}email, {1}website, {1}comment, {1}country, {1}ip, {1}isapproved, {1}moderatedby, {1}avatar, {1}isspam, {1}isdeleted)", this.tablePrefix, this.parmPrefix);
cmd.CommandText = sqlQuery;
parms.Clear();
parms.Add(conn.CreateParameter(FormatParamName("blogid"), Blog.CurrentInstance.Id.ToString()));
parms.Add(conn.CreateParameter(FormatParamName("postcommentid"), comment.Id.ToString()));
parms.Add(conn.CreateParameter(FormatParamName("parentid"), comment.ParentId.ToString()));
parms.Add(conn.CreateParameter(FormatParamName("id"), post.Id.ToString()));
parms.Add(conn.CreateParameter(FormatParamName("date"), comment.DateCreated.AddHours(-BlogSettings.Instance.Timezone)));
parms.Add(conn.CreateParameter(FormatParamName("author"), comment.Author));
parms.Add(conn.CreateParameter(FormatParamName("email"), comment.Email));
parms.Add(conn.CreateParameter(FormatParamName("website"), (comment.Website == null ? string.Empty : comment.Website.ToString())));
parms.Add(conn.CreateParameter(FormatParamName("comment"), comment.Content));
parms.Add(conn.CreateParameter(FormatParamName("country"), (comment.Country ?? string.Empty)));
parms.Add(conn.CreateParameter(FormatParamName("ip"), (comment.IP ?? string.Empty)));
parms.Add(conn.CreateParameter(FormatParamName("isapproved"), comment.IsApproved));
parms.Add(conn.CreateParameter(FormatParamName("moderatedby"), (comment.ModeratedBy ?? string.Empty)));
parms.Add(conn.CreateParameter(FormatParamName("avatar"), (comment.Avatar ?? string.Empty)));
parms.Add(conn.CreateParameter(FormatParamName("isspam"), comment.IsSpam));
parms.Add(conn.CreateParameter(FormatParamName("isdeleted"), comment.IsDeleted));
cmd.ExecuteNonQuery();
}
}
}