⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 add.ascx.cs

📁 Maolz个人展示网站源码,全部的代码,.net
💻 CS
字号:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;


namespace MySite.WebUI.Controls.Article
{
    using MySite.Utils;
    using SubSonic;
    using SubSonic.Generated;
    using SubSonic.Sugar;
    using System.Collections.Generic;
    using System.Transactions;
    using System.Data.SqlClient;
    public partial class Add : System.Web.UI.UserControl
    {

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                int? id = Web.QueryString<Nullable<int>>("id");
                this.HiddenField1.Value = "-1";
                if (id.HasValue)
                {
                    Article arti = new Article(id);
                    if (arti.IsLoaded)
                    {
                        this.HiddenField1.Value = id.Value.ToString();
                        this.Title.Text = arti.Title;
                        this.Author.Text = arti.Author;
                        this.FCKeditor1.Value = arti.Content;
                        this.SourceFrom.Text = arti.SourceFrom;
                        this.Tags.Text = arti.GetTags();
                        this.CategoryNames.Text = arti.GetCategoryNames();
                    }
                   
                }
                else
                {
                    string cateName = Web.QueryString<string>("categoryname");
                    Category cate = new Category(Category.Columns.Name, cateName);
                    if (cate.IsLoaded)
                        this.CategoryNames.Text = cateName;
                }
            }
        }

        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            //using(TransactionScope scope=new TransactionScope())
            //{
                try
                {
                    //储存新文章信息
                    Article arti = new Article(this.HiddenField1.Value);
                    arti.LoadFromPost();
                    arti.Content = this.FCKeditor1.Value;
                    arti.Save();
                    if (arti.IsLoaded)
                    {
                        //删除已有标签集
                        //Article.DeleteTagMap(arti.PKId);
                        foreach (Tag t in arti.GetTagCollection()) 
                        {
                            if (t.UseTimes == 1)
                            {
                                DB.Delete().From<ArticleTagMapping>().Where(ArticleTagMapping.Columns.TagId).IsEqualTo(t.PKId).Execute();
                                Tag.Destroy(t.PKId);
                            }
                            else 
                            {
                                t.UseTimes -= 1;
                                t.Save();
                                DB.Delete().From<ArticleTagMapping>().Where("ArticleId").IsEqualTo(arti.PKId).And("TagId").IsEqualTo(t.PKId).Execute();
                            }
                        }
                        //删除已有分类集
                        Article.DeleteCategoryMap(arti.PKId);
                    }
                    //储存分类集
                    int[] categoryIds=Category.GetCategoryParentIds(this.CategoryNames.Text);
                    Article.SaveCategoryMap(arti.PKId, categoryIds);
                    //储存Tag标签集      
                    //string[] strs = this.Tags.Text.Split(Constant.tagSeparator, StringSplitOptions.RemoveEmptyEntries);
                    //IList<int> list = new List<int>();
                    //TagCollection tagColl=new TagCollection();
                    //foreach (string str in strs) 
                    //{
                    //    Tag tag = new Tag(Tag.Columns.Name, str);
                    //    if (tag.IsNew)
                    //    {
                    //        tag.Name = str;
                    //        tag.UseTimes = 1;
                    //    }
                    //    else
                    //    {
                    //        tag.UseTimes += 1;
                    //    }
                    //    tag.Save();
                    //    tagColl.Add(tag);
                    //}
                    TagCollection tagColl = Tag.UpdateAndReturnTags(this.Tags.Text);
                    Article.SaveTagMap(arti.PKId, tagColl);

                    
                    
                    //Dictionary<string, int> dict = new Dictionary<string, int>();
                    //foreach (string str in strs)
                    //{
                    //    if (!dict.ContainsKey(str))
                    //        dict.Add(str, 1);
                    //}

                    ////List<Insert> queries = new List<Insert>();
                    //foreach (KeyValuePair<string, int> kvp in dict)
                    //{
                    //    //queries.Add(new Insert().Into(Tag.Schema, new string[] { Tag.Columns.Name, Tag.Columns.UseTimes }).Values(new object[] { kvp.Key, kvp.Value }));
                    //    //queries.Add(new Insert().Into(ArticleTagMapping.Schema, new string[] { ArticleTagMapping.Columns.ArticleId, ArticleTagMapping.Columns.TagId }).Values(new object[] {arti.PKId, }));
                    //    Tag tag = new Tag(Tag.Columns.Name, kvp.Key);
                    //    if (tag.IsNew)
                    //    {
                    //        tag.Name = kvp.Key;
                    //        tag.UseTimes = new int?(kvp.Value);
                    //    }
                    //    else
                    //    {
                    //        tag.UseTimes += 1;
                    //    }
                    //    tag.Save();
                    //    ArticleTagMapping atm = new ArticleTagMapping();
                    //    atm.ArticleId = arti.PKId;
                    //    atm.TagId = tag.PKId;
                    //    atm.Save();
                    //}

                    //scope.Complete();

                }
                catch(SqlException ex)
                {
                    throw ex;
                }
            //}
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -