zoukankan      html  css  js  c++  java
  • 生成实体层的界面(webForm1.aspx)代码

    1)从数据库中获取表结构

    执行  sp_help '表名'

    2)复制列名和类型(如int,string等)

    3)按convert转化代码。

     

    相应的界面代码

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Text.RegularExpressions;
    using System.Text;
    using System.Reflection;
    //using Ctrip.Business;
    using System.Collections.Generic;

    namespace Ctrip.UI.CT
    {
        /// <summary>
        /// data type
        /// </summary>
        public class MathDataType
        {
            public string IntType
            {
                get
                {
                    return "int";
                }
            }

            public string DateTimeType
            {
                get
                {
                    return "DateTime";
                }
            }

            public string CharType
            {
                get
                {
                    return "string";
                }
            }

            public string VarcharType
            {
                get
                {
                    return "string";
                }
            }
        }

        public partial class WebForm1 : System.Web.UI.Page
        {

            StringBuilder sb = new StringBuilder();
            string sign_rn = "\r\n";
            string sign_t = "\t";
            Hashtable htDataType = new Hashtable();
            protected void Page_Load(object sender, EventArgs e)
            {
            }

            protected void btnChange_OnClick(object sender, EventArgs e)
            {
               
                string fromContent = this.tbxFrom.Text;
                string[] rows = splitString(fromContent, sign_rn);

                for (int iAttr = 0; iAttr < rows.Length; iAttr++)
                {
                    string[] str = splitString(rows[iAttr], sign_t);
                    if (str.Length > 1)
                    {
                        sb.Append("private " + ConvertToTypeStr(str[1].ToString()) + " " + ConvetFirstWordToLower(str[0].ToString()) + ";" + sign_rn);

                    }
                }

                for (int i = 0; i < rows.Length; i++)
                {
                    string[] str = splitString(rows[i], sign_t);
                    if (str.Length > 1)
                    {
                        sb.Append(sign_rn);
                        sb.Append("public " + ConvertToTypeStr(str[1].ToString()) + " " + ConvetFirstWordToUpper(str[0].ToString()) + " " + sign_rn + "{" + sign_rn);

                        sb.Append("get { return " + ConvetFirstWordToLower(str[0].ToString()) + "; }" + sign_rn);
                        sb.Append("set { " + ConvetFirstWordToLower(str[0].ToString()) + " = value;" + " }" + sign_rn);
                        sb.Append("}" + sign_rn);
                    }
                }

                tbxTo.Text = sb.ToString();
            }

            protected void btnTest_OnClick(object sender, EventArgs e)
            {
                //MemberEntity men = new MemberEntity();
                //men.Password = "1";
                //Memberbusiness mb = new Memberbusiness();
                //mb.TestMember(men);
                //string str = men.Picture;
                List<string> list = new List<string>();
                list.Add("set");
                list.Add("get");
            }

            private string[] splitString(string content,string splitString)
            {
                return Regex.Split(content, splitString, RegexOptions.IgnoreCase);
            }

            private string ConvertToTypeStr(string str)
            {
                //Ctrip.Business.ChinaTravelBusiness.Memberbusiness memb = new Ctrip.Business.ChinaTravelBusiness.Memberbusiness();

                //MemberEntity mem = new MemberEntity();
                //mem.Country = "2";
                //memb.TestMember(mem);
                foreach (PropertyInfo info in typeof(MathDataType).GetProperties())
                {
                    if (str.ToLower() == Regex.Replace(info.Name, "Type", "").ToLower())
                    {
                        return info.GetValue(new MathDataType(), null).ToString(); 
                    }
                }

               
                return "String";
            }

            private void test(params int[] ages)
            {
              
            }

            //private string ConvetSpace(string content)
            //{
            //    string returnContent = String.Empty;
            //    Regex.Replace(content, "[\r|\n|\t]", " ");
            //    Regex.Replace(content, "[\r|\n|\t]", " ");
            //}

            private string ConvetFirstWordToLower(string content)
            {
                string str = content.Substring(0, 1);
               
                str = str.ToLower();
                return str + content.Substring(1);
            }

            private string ConvetFirstWordToUpper(string content)
            {
                string str = content.Substring(0, 1);
                str = str.ToUpper();
                return str + content.Substring(1);
            }

        }
    }

  • 相关阅读:
    C#显示接口实现和隐式接口实现
    JAVA8新特性总结一(接口函数默认实现)
    接口(策略设计模式)
    自定义注解
    C# Task的GetAwaiter和ConfigureAwait
    UNIX(编程-进程处理):30---僵死进程、孤儿进程(SIGCLD、SIGHCLD信号处理)
    C# 静态变量会被gc回收么?
    C# 托管资源与非托管资源
    WebSocket与消息推送
    Quartz.NET实现作业调度
  • 原文地址:https://www.cnblogs.com/chinaagan/p/1395202.html
Copyright © 2011-2022 走看看