Backup/Discuz.Data/DataProvider/Posts.cs

(开头部分) 44KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Data;
using System.Text;

using Discuz.Entity;
using Discuz.Common;
using Discuz.Common.Generic;
using Discuz.Config;
using Discuz.Cache.Data;

namespace Discuz.Data
{
    public class Posts
    {
         /// <summary>
        /// 是否启用缓存帖子表
        /// </summary>
        public static bool appDBCache = (EntLibConfigs.GetConfig() != null && EntLibConfigs.GetConfig().Cacheposts.Enable);

        public static ICachePosts IPostService = appDBCache ? DBCacheService.GetPostsService() : null;

        public static PostInfo GetLastPostByTid(int tid, string tableName)
        {
            PostInfo postinfo = new PostInfo();
            DataTable dt = DatabaseProvider.GetInstance().GetLastPostByTid(tid, tableName);
            if (dt.Rows.Count > 0)
            {
                postinfo.Pid = TypeConverter.ObjectToInt(dt.Rows[0]["pid"]);
                postinfo.Tid = TypeConverter.ObjectToInt(dt.Rows[0]["tid"]);
                postinfo.Title = dt.Rows[0]["title"].ToString().Trim();
                postinfo.Postdatetime = dt.Rows[0]["postdatetime"].ToString().Trim();
                postinfo.Poster = dt.Rows[0]["poster"].ToString().Trim();
                postinfo.Posterid = TypeConverter.ObjectToInt(dt.Rows[0]["posterid"]);
                postinfo.Topictitle = Topics.GetTopicInfo(postinfo.Tid, 0, 0).Title;
            }
            else
            {
                postinfo.Pid = 0;
                postinfo.Tid = 0;
                postinfo.Title = "从未";
                postinfo.Topictitle = "从未";
                postinfo.Postdatetime = "1900-1-1";
                postinfo.Poster = "";
                postinfo.Posterid = 0;
            }
            dt.Dispose();
            return postinfo;
        }

        /// <summary>
        /// 创建帖子
        /// </summary>
        /// <param name="postInfo">帖子信息</param>
        /// <param name="postTableId">分表ID</param>
        /// <returns>帖子ID</returns>
        public static int CreatePost(PostInfo postInfo, string postTableId)
        {            
            int postId = DatabaseProvider.GetInstance().CreatePost(postInfo, postTableId);
            //更新TTCache缓存中的用户信息
            if (postInfo.Invisible == 0 && Users.appDBCache && Users.IUserService != null)
后面还有 975 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。