通过AddBaseSqlFunction实现对字段字符串前后填充字符

2015-04-05 21:51:33  访问(1392) 赞(0) 踩(0)

生成和输出的SQL语句

select 
t.ID as ID, 
t.UpdateTime as UpdateTime, 
t.TheName as TheName, 
t.CreateTime as CreateTime, 
('初中' + t.TheName + '(班级)') as myName
from UTB_EXAM_CLASS t
order by 
t.ID asc, t.TheName asc


关键代码

// 额外扩展的TheName
            SqlSelectAssist sqlSelectAssistValue = new SqlSelectAssist();
            sqlSelectAssistValue.selectName = "myName";
            sqlSelectAssistValue.AddBaseSqlFunction
                (
                    new SlowX.Core.Classes.StringLinkSqlFunction
                        (
                            "初中", 
                            "(班级)"
                        )
                );
            iselect.AddISelectItemWithEntityFieldInfo
                (
                    sqlSelectAssistValue, 
                    entity._TheName
                );


代码写法

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SlowX.DAL.Helpers;
using SlowX.Core.ICoreClasses;
using System.Data;
using SlowX.Functions.Functions;
using SlowX.Core.CoreClasses;

public partial class ExamSQL : System.Web.UI.Page
{
    protected string strResult = "";

    protected void Page_Load(object sender, EventArgs e)
    {
        DataBindTheContorls(null);
    }

    #region 操作

    /// <summary>
    /// 
    /// </summary>
    /// <param name="xdbHelper"></param>
    protected void DataBindTheContorls(DBHelper xdbHelper)
    {
        string theResult = null;
        bool bIsCreate = true;

        if (xdbHelper == null)
        {
            xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
        }
        else
        {
            // 没有打开链接 //
            bIsCreate = xdbHelper.IsNotOpen();
        }

        try
        {
            if (bIsCreate)
                xdbHelper.OpenDBHelper();

            SlowX.ExamLib.Business.UTB_EXAM_CLASS
                bll
                =
                SlowX.ExamLib.Business.UTB_EXAM_CLASS.instance;

            SlowX.ExamLib.Entity.UTB_EXAM_CLASS
                entity
                =
                new SlowX.ExamLib.Entity.UTB_EXAM_CLASS();

            IOrderByDriver iorder = entity;
            IQueryDriver iq = entity;
            ISelectDriver iselect = entity;

            // 设置排序方式 //
            // ID ASC 
            iorder.AddIOrderByItemWithEntityFieldInfo
                (
                    entity._ID, 
                    SlowX.Core.Enums.OrderBy.EmOrderBy.ASC
                );

            // TheName ASC 
            iorder.AddIOrderByItemWithEntityFieldInfo
                (
                    entity._TheName, 
                    SlowX.Core.Enums.OrderBy.EmOrderBy.ASC
                );

            // 如果不做设置select,就是select全部 //
            // 如果设置了Select,这里设置select ID TheCode 
            iselect.AddISelectItemWithDataColumnName("ID,UpdateTime", ",");
            // 追加 TheName //
            iselect.AddISelectItemWithEntityFieldInfo(entity._TheName);
            // 追加 CreateTime //
            iselect.AddISelectItemWithEntityFieldInfo(entity._CreateTime);

            // 额外扩展的TheName
            SqlSelectAssist sqlSelectAssistValue = new SqlSelectAssist();
            sqlSelectAssistValue.selectName = "myName";
            sqlSelectAssistValue.AddBaseSqlFunction
                (
                    new SlowX.Core.Classes.StringLinkSqlFunction
                        (
                            "初中", 
                            "(班级)"
                        )
                );
            iselect.AddISelectItemWithEntityFieldInfo
                (
                    sqlSelectAssistValue, 
                    entity._TheName
                );


            DataSet ds = bll.List(entity, xdbHelper);

            theResult =
                @"<textarea name=""TextBox1"" rows=""2"" cols=""20"" id=""TextBox1"" style=""height:400px;width:99%;"">"
                + bll.BuildSqlList(entity, xdbHelper)
                + "</textarea>";

            theResult += "<br /><br />";

            theResult += DataSetSlowXFunctions.DataSetToHtmlTable(ds, true);

            

            if (bIsCreate)
                xdbHelper.EndDBHelper();

        }
        catch (Exception err)
        {
            if (bIsCreate)
                xdbHelper.TranDBHelper();

            throw err;
        }
        finally
        {
            if (bIsCreate)
                xdbHelper.FinallyDBHelper();
        }

        strResult = theResult;
    }

    #endregion 操作

}




标签:通过AddBaseSqlFunction实现对字段字符串前后填充字符 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)