DotNet.WebApplication/Core/Business/Project/ProjectManager.cs

(开头部分) 5KB

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

//-----------------------------------------------------------------
// All Rights Reserved , Copyright (C) 2013 , Hairihan TECH, Ltd .
//-----------------------------------------------------------------

using System;
using System.Data;
using System.Data.Common;
using System.Collections.Generic;

namespace Project
{
    using DotNet.Business;
    using DotNet.Utilities;

    /// <summary>
    /// ProjectManager
    /// 项目跟进表
    ///
    /// 修改纪录
    ///
    ///		2010-09-28 版本:1.0 JiRiGaLa 创建主键。
    ///
    /// 版本:1.0
    ///
    /// <author>
    ///		<name>JiRiGaLa</name>
    ///		<date>2010-09-28</date>
    /// </author>
    /// </summary>
    public partial class ProjectManager : BaseManager, IBaseManager
    {
        public DataTable Search(string userId, string searchValue)
        {
            // 一、这里是开始进行动态SQL语句拼接,字段名、表明都进行了常量定义,表名字段名发生变化时,很容易就知道程序哪里都调用了这些。
            string sqlQuery = string.Empty;
            sqlQuery = " SELECT * "
                    + " FROM " + this.CurrentTableName
                    + " WHERE " + ProjectTable.FieldDeletionStateCode + " =  0 ";

            // 二、我们认为 userId 这个查询条件是安全,不是人为输入的参数,所以直接进行了SQL语句拼接
            if (!String.IsNullOrEmpty(userId))
            {
                sqlQuery += " AND " + ProjectTable.FieldCreateUserId + " = '" + userId + "'";
            }

            // 三、这里是进行参数化的准备,因为是多个不确定的查询参数,所以用了List。
            List<IDbDataParameter> dbParameters = new List<IDbDataParameter>();

            // 四、这里看查询条件是否为空
            searchValue = searchValue.Trim();
            if (!String.IsNullOrEmpty(searchValue))
            {
                // 五、这里是进行支持多种数据库的参数化查询
                sqlQuery += " AND (" + ProjectTable.FieldKeHuMingCheng + " LIKE " + DbHelper.GetParameter(ProjectTable.FieldKeHuMingCheng);
                sqlQuery += " OR " + ProjectTable.FieldKeHuXiangMuMingCheng + " LIKE " + DbHelper.GetParameter(ProjectTable.FieldKeHuXiangMuMingCheng);
                sqlQuery += " OR " + ProjectTable.FieldCreateBy + " LIKE " + DbHelper.GetParameter(ProjectTable.FieldCreateBy);
                sqlQuery += " OR " + ProjectTable.FieldDescription + " LIKE " + DbHelper.GetParameter(ProjectTable.FieldDescription) + ")";

                // 六、这里是判断,用户是否已经输入了%
                if (searchValue.IndexOf("%") < 0)
后面还有 58 行代码,购买后查看完整代码

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

AI 解读

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

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