Example #1
0
 public bool Delete(Model.PostContents.PostContent post)
 {
     using (ISession session = sessionFactory.OpenSession())
     {
         ITransaction trans     = session.BeginTransaction();
         bool         IsSuccess = false;
         try
         {
             session.Delete(post);
             session.Flush();
             trans.Commit();
             if (trans.WasCommitted)
             {
                 IsSuccess = true;
             }
         }
         catch (Exception)
         {
             trans.Rollback();
             throw;
         }
         return(IsSuccess);
     }
 }
Example #2
0
        private void Tree_NewSubFolderMenuItem_Click(object sender, EventArgs e)
        {
            TreeNode tn = tv_Folder.SelectedNode;
            Model.PostContents.PostContent post = null;
            bool flag = false;

            if (tn != null)
            {
                TreeNode node = new TreeNode(Constant.KM_DEFAULT_FOLDERNAME);
                node.ImageIndex = 1;
                node.SelectedImageIndex = 1;
                node.Tag = Enums.FOLDER;
                TreeNodeCollection tc = tn.Nodes;

                //插入节点的排序问题
                //int folders = 0;
                //foreach (TreeNode item in tc)
                //{
                //    if (item.Tag.ToString() == Enums.FOLDER.ToString())
                //    {
                //        folders++;
                //    }
                //}

                post = new Model.PostContents.PostContent();
                post.Id = Guid.NewGuid();
                post.Title = node.Text;
                post.Type = false;//目录 非文章
                post.ModifyDate = DateTime.Now;
                post.CreateDate = DateTime.Now;
                post.Content = string.Empty;
                post.Enable = true;

                node.Name = post.Id.ToString();
                if (tn.Tag.ToString() == Enums.ROOT.ToString())//如果是根节点
                {
                    post.ParentId = Guid.Empty;
                    //flag = SQLHelper.InsertFolder(post, true);
                    flag = (bool)PostContentsDAO.CreatePostContentsDAO().Save(post);
                }
                else
                {
                    post.ParentId = tn.Name.ToGuid();
                    //flag = SQLHelper.InsertFolder(post, false);
                    flag = (bool)PostContentsDAO.CreatePostContentsDAO().Save(post);
                    node.ForeColor = Color.Maroon;
                    tn.Expand();
                }

                if (flag)
                {
                    //tn.Nodes.Insert(folders, node);
                    tn.Nodes.Insert(tn.Nodes.Count, node);
                }
                else
                {
                    MessageBoxEx.Show(Constant.KM_ER_DATA_SAVE_FAILED, Constant.KM_TYPE_WARN, MessageBoxButtons.OK);
                }

            }
        }
Example #3
0
        private void Tree_NewNoteMenuItem_Click(object sender, EventArgs e)
        {
            TreeNode tn = tv_Folder.SelectedNode;
            //PostContent post = null;
            Model.PostContents.PostContent post = null;
            bool flag = false;
            if (tn != null)
            {
                TreeNode node = new TreeNode(Constant.KM_DEFAULT_NOTENAME);
                //int lineNum;
                node.BeginEdit();
                node.ImageIndex = 0;
                node.SelectedImageIndex = 0;
                node.Tag = Enums.LEAVES;
                //原方案
                //node.Name = (SQLHelper.GetMaxID(Enums.Table_Content.ToString(), "Id") + 1).ToString();
                //新方案
                //PostContentsDAO.CreatePostContentsDAO().QueryAll(out lineNum);
                //node.Name = (lineNum+1).ToString();
                post = new Model.PostContents.PostContent();
                post.Id = Guid.NewGuid();
                post.Title = node.Text;
                post.Type = true;//非目录 文章
                post.Enable = true;
                post.ModifyDate = DateTime.Now;
                post.CreateDate = DateTime.Now;
                //原方案
                //post.ParentId = SQLHelper.GetIdByName(tn.Text);
                //新方案
                //post.ParentId = PostContentsDAO.CreatePostContentsDAO().GetGuidByLineNum(node.Name.ToInt()-1);
                post.ParentId = tn.Name.ToGuid();
                node.Name = post.Id.ToString();

                //原方案
                //flag = SQLHelper.InsertFolder(post, false);
                //新方案
                flag = (bool)PostContentsDAO.CreatePostContentsDAO().Save(post);

                if (flag)
                {
                    //这里需要改进,对文件夹和Note区分下,所有文件夹在所有的Note之上
                    tn.Nodes.Insert(tn.Nodes.Count, node);
                    node.ForeColor = Color.Maroon;
                    tn.Expand();
                }
                else
                {
                    MessageBoxEx.Show(Constant.KM_ER_NOTE_SAVE_FAILED, Constant.KM_TYPE_WARN, MessageBoxButtons.OK);
                }

            }
        }