BlogEngine.Core.Providers.DbBlogProvider.InsertPost C# (CSharp) Method

InsertPost() public method

Adds a new post to database
public InsertPost ( Post post ) : void
post Post /// The new post. ///
return void
        public override void InsertPost(Post post)
        {
            using (TransactionScope ts = new TransactionScope())
            {
                using (var conn = this.CreateConnection())
                {
                    if (conn.HasConnection)
                    {
                        var sqlQuery = string.Format("INSERT INTO {0}Posts (BlogID, PostID, Title, Description, PostContent, DateCreated, DateModified, Author, IsPublished, IsCommentEnabled, Raters, Rating, Slug, IsDeleted) VALUES ({1}blogid, {1}id, {1}title, {1}desc, {1}content, {1}created, {1}modified, {1}author, {1}published, {1}commentEnabled, {1}raters, {1}rating, {1}slug, {1}isdeleted)", this.tablePrefix, this.parmPrefix);

                        using (var cmd = conn.CreateTextCommand(sqlQuery))
                        {

                            var parms = cmd.Parameters;
                            parms.Add(conn.CreateParameter(FormatParamName("blogid"), Blog.CurrentInstance.Id.ToString()));
                            parms.Add(conn.CreateParameter(FormatParamName("id"), post.Id.ToString()));
                            parms.Add(conn.CreateParameter(FormatParamName("title"), post.Title));
                            parms.Add(conn.CreateParameter(FormatParamName("desc"), (post.Description ?? string.Empty)));
                            parms.Add(conn.CreateParameter(FormatParamName("content"), post.Content));
                            parms.Add(conn.CreateParameter(FormatParamName("created"), post.DateCreated.AddHours(-BlogSettings.Instance.Timezone)));
                            parms.Add(conn.CreateParameter(FormatParamName("modified"), (post.DateModified == new DateTime() ? DateTime.Now : post.DateModified.AddHours(-BlogSettings.Instance.Timezone))));
                            parms.Add(conn.CreateParameter(FormatParamName("author"), (post.Author ?? string.Empty)));
                            parms.Add(conn.CreateParameter(FormatParamName("published"), post.IsPublished));
                            parms.Add(conn.CreateParameter(FormatParamName("commentEnabled"), post.HasCommentsEnabled));
                            parms.Add(conn.CreateParameter(FormatParamName("raters"), post.Raters));
                            parms.Add(conn.CreateParameter(FormatParamName("rating"), post.Rating));
                            parms.Add(conn.CreateParameter(FormatParamName("slug"), (post.Slug ?? string.Empty)));
                            parms.Add(conn.CreateParameter(FormatParamName("isdeleted"), post.IsDeleted));

                            cmd.ExecuteNonQuery();
                        }

                        // Tags
                        this.UpdateTags(post, conn);

                        // Categories
                        this.UpdateCategories(post, conn);

                        // Comments
                        this.UpdateComments(post, conn);

                        // Email Notification
                        this.UpdateNotify(post, conn);
                    }
                }
                ts.Complete();
            }
        }