数据表转换获得模块的名称 == 比如 UTB_SZDF_HR_USER_ROLE ==> Szdf

2017-10-29 20:13:21  访问(1672) 赞(0) 踩(0)


        /// <summary>
        /// 转成大小写格式,比如 HR_USER_ROLE ==> HrUserRole
        /// </summary>
        /// <param name="str">HR_USER_ROLE</param>
        /// <returns>HrUserRole</returns>
        protected string DevToCharName(string str)
        {
            if (str == null || str.Length == 0)
                return "";

            string[] sA = str.Split('_');

            StringBuilder theResult = new StringBuilder();

            string strTmp = null;

            foreach (string s in sA)
            {
                if (s == null)
                    continue;

                strTmp = s.Trim();

                if (strTmp.Length == 0)
                    continue;

                if (strTmp.Length == 1)
                {
                    theResult.Append(strTmp.ToUpper());
                    continue;
                }

                theResult.Append(strTmp.Substring(0, 1).ToUpper() + strTmp.Substring(1).ToLower());
            }

            return theResult.ToString();
        }



        /// <summary>
        /// 数据表转换获得模块的名称 == 比如 UTB_SZDF_HR_USER_ROLE ==> Szdf
        /// </summary>
        /// <param name="tableName"></param>
        /// <returns></returns>
        protected string ModuleRootNameBuild(string tableName)
        {

            if (tableName == null || tableName.Length == 0)
                return "";

            tableName = tableName.Trim();
            string lowerTableName = tableName.ToLower();

            if (lowerTableName.StartsWith("utb_"))
                tableName = tableName.Substring(("UTB_").Length);

            // 过滤 UTB_ //
            int idx = tableName.IndexOf('_');

            if (idx == -1)
                return DevToCharName(tableName);

            return DevToCharName(tableName.Substring(0, idx));
 
        }


上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)