澳门威利斯人_威利斯人娱乐「手机版」

来自 办公软件 2019-05-02 14:52 的文章
当前位置: 澳门威利斯人 > 办公软件 > 正文

威尼斯官网:自动生成Model,仿站工具

下边我将自己写的“网址克隆工具”落成格局分享给大家,源码在文末有下载链接,有亟待的恋人能够下载来玩,也能够依照本人的须要做相应的改变或优化。

 

懒人小工具:T四自动生成Model,Insert,Select,Delete以及导出Excel的诀窍
在支付的进程中,我们为了节约时间,往往会将多量再次机械的代码封装,思量代码的复用性,那样我们得以节约多数光阴来做其他事情。近年来跳槽到壹节webform开荒的厂商,重假若支付协和公司用的ERP。初叶因为有个别抓住进来的,现在以为其实有个别后悔放弃了很好的上学ABP以及新知识点像有个别很新颖的前端框架进这一个集团。但未来跳槽也不是一个明智之举,倒霉意思扯远了,既来之则安之。目前写了个小工具。首要针对webform开荒进程中一些重新的代码管理。
实际上未有怎么越来越大的技艺难度,其实webform开辟貌似也不曾尤其大的才能难度。
首先新建3个类库WorkHelper。
下一场新建类Program.cs,这里是作为主程序入口。

接口:

 

4.png

 

 

        public class Model
        {

            private Int _AYA_Code;
            public Int AYA_Code
            {
                get { return _AYA_Code; }
                set { _AYA_Code = value; }
            }
            private string _AYHA_Code;
            public string AYHA_Code
            {
                get { return _AYHA_Code; }
                set { _AYHA_Code = value; }
            }
            private string _Ctg_ID;
            public string Ctg_ID
            {
                get { return _Ctg_ID; }
                set { _Ctg_ID = value; }
            }
            private string _HospitalCode;
            public string HospitalCode
            {
                get { return _HospitalCode; }
                set { _HospitalCode = value; }
            }
            private string _HospitalName;
            public string HospitalName
            {
                get { return _HospitalName; }
                set { _HospitalName = value; }
            }
            private string _HospitalGrad;
            public string HospitalGrad
            {
                get { return _HospitalGrad; }
                set { _HospitalGrad = value; }
            }
            private string _HospitalRegionID;
            public string HospitalRegionID
            {
                get { return _HospitalRegionID; }
                set { _HospitalRegionID = value; }
            }
            private System.DateTime _DevelopmentLimitTime;
            public System.DateTime DevelopmentLimitTime
            {
                get { return _DevelopmentLimitTime; }
                set { _DevelopmentLimitTime = value; }
            }
            private System.DateTime _EffectiveTime;
            public System.DateTime EffectiveTime
            {
                get { return _EffectiveTime; }
                set { _EffectiveTime = value; }
            }
            private System.Decimal _MarketingManagementFee;
            public System.Decimal MarketingManagementFee
            {
                get { return _MarketingManagementFee; }
                set { _MarketingManagementFee = value; }
            }
            private System.Decimal _BidPrice;
            public System.Decimal BidPrice
            {
                get { return _BidPrice; }
                set { _BidPrice = value; }
            }
            private string _DeliveryCode;
            public string DeliveryCode
            {
                get { return _DeliveryCode; }
                set { _DeliveryCode = value; }
            }
            private string _DeliveryName;
            public string DeliveryName
            {
                get { return _DeliveryName; }
                set { _DeliveryName = value; }
            }
            private string _AgreeAdjuestType;
            public string AgreeAdjuestType
            {
                get { return _AgreeAdjuestType; }
                set { _AgreeAdjuestType = value; }
            }
            private string _ChangeContent;
            public string ChangeContent
            {
                get { return _ChangeContent; }
                set { _ChangeContent = value; }
            }
            private string _Status;
            public string Status
            {
                get { return _Status; }
                set { _Status = value; }
            }
            private System.Decimal _DeliveryPrice;
            public System.Decimal DeliveryPrice
            {
                get { return _DeliveryPrice; }
                set { _DeliveryPrice = value; }
            }
            private System.Decimal _BasePrice;
            public System.Decimal BasePrice
            {
                get { return _BasePrice; }
                set { _BasePrice = value; }
            }
            private string _CategoryCommodityName;
            public string CategoryCommodityName
            {
                get { return _CategoryCommodityName; }
                set { _CategoryCommodityName = value; }
            }
            private string _CategorySystemName;
            public string CategorySystemName
            {
                get { return _CategorySystemName; }
                set { _CategorySystemName = value; }
            }
            private string _CategoryCommName;
            public string CategoryCommName
            {
                get { return _CategoryCommName; }
                set { _CategoryCommName = value; }
            }
            private string _CategorySpec;
            public string CategorySpec
            {
                get { return _CategorySpec; }
                set { _CategorySpec = value; }
            }
            private string _Formulation;
            public string Formulation
            {
                get { return _Formulation; }
                set { _Formulation = value; }
            }
            private string _BusinessModel;
            public string BusinessModel
            {
                get { return _BusinessModel; }
                set { _BusinessModel = value; }
            }

        }


        public bool InsertAgreement_YNSHigh_Authorize(Model model)
        {

            string strSql = @"
               INSERT Agreement_YNSHigh_Authorize(
                 AYA_Code,
                 AYHA_Code,
                 Ctg_ID,
                 HospitalCode,
                 HospitalName,
                 HospitalGrad,
                 HospitalRegionID,
                 DevelopmentLimitTime,
                 EffectiveTime,
                 MarketingManagementFee,
                 BidPrice,
                 DeliveryCode,
                 DeliveryName,
                 AgreeAdjuestType,
                 ChangeContent,
                 Status,
                 DeliveryPrice,
                 BasePrice,
                 CategoryCommodityName,
                 CategorySystemName,
                 CategoryCommName,
                 CategorySpec,
                 Formulation,
                 BusinessModel)
                 VALUES (
                    @AYA_Code,
                    @AYHA_Code,
                    @Ctg_ID,
                    @HospitalCode,
                    @HospitalName,
                    @HospitalGrad,
                    @HospitalRegionID,
                    @DevelopmentLimitTime,
                    @EffectiveTime,
                    @MarketingManagementFee,
                    @BidPrice,
                    @DeliveryCode,
                    @DeliveryName,
                    @AgreeAdjuestType,
                    @ChangeContent,
                    @Status,
                    @DeliveryPrice,
                    @BasePrice,
                    @CategoryCommodityName,
                    @CategorySystemName,
                    @CategoryCommName,
                    @CategorySpec,
                    @Formulation,
                   @BusinessModel)

                     ";
            SqlParameter[] parameters = new SqlParameter[]
                                                  {
                     new SqlParameter("@AYA_Code", SqlDbType.Int),
                     new SqlParameter("@AYHA_Code", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Ctg_ID", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalCode", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalGrad", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalRegionID", SqlDbType.NVarChar, 255),
                     new SqlParameter("@DevelopmentLimitTime", SqlDbType.DateTime),
                     new SqlParameter("@EffectiveTime", SqlDbType.DateTime),
                      new SqlParameter("@MarketingManagementFee", SqlDbType.Decimal),
                      new SqlParameter("@BidPrice", SqlDbType.Decimal),
                     new SqlParameter("@DeliveryCode", SqlDbType.NVarChar, 255),
                     new SqlParameter("@DeliveryName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@AgreeAdjuestType", SqlDbType.NVarChar, 255),
                     new SqlParameter("@ChangeContent", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Status", SqlDbType.NVarChar, 255),
                      new SqlParameter("@DeliveryPrice", SqlDbType.Decimal),
                      new SqlParameter("@BasePrice", SqlDbType.Decimal),
                     new SqlParameter("@CategoryCommodityName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategorySystemName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategoryCommName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategorySpec", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Formulation", SqlDbType.NVarChar, 255),
                     new SqlParameter("@BusinessModel", SqlDbType.NVarChar, 255),
                            };
            parameters[0].Value = model.AYA_Code;
            parameters[1].Value = model.AYHA_Code;
            parameters[2].Value = model.Ctg_ID;
            parameters[3].Value = model.HospitalCode;
            parameters[4].Value = model.HospitalName;
            parameters[5].Value = model.HospitalGrad;
            parameters[6].Value = model.HospitalRegionID;
            parameters[7].Value = model.DevelopmentLimitTime;
            parameters[8].Value = model.EffectiveTime;
            parameters[9].Value = model.MarketingManagementFee;
            parameters[10].Value = model.BidPrice;
            parameters[11].Value = model.DeliveryCode;
            parameters[12].Value = model.DeliveryName;
            parameters[13].Value = model.AgreeAdjuestType;
            parameters[14].Value = model.ChangeContent;
            parameters[15].Value = model.Status;
            parameters[16].Value = model.DeliveryPrice;
            parameters[17].Value = model.BasePrice;
            parameters[18].Value = model.CategoryCommodityName;
            parameters[19].Value = model.CategorySystemName;
            parameters[20].Value = model.CategoryCommName;
            parameters[21].Value = model.CategorySpec;
            parameters[22].Value = model.Formulation;
            parameters[23].Value = model.BusinessModel;

            using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString))
            {
                conn.Open();
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        int i = SqlHelper.ExecuteNonQuery(trans, CommandType.Text, strSql, parameters);
                        if (i > 0)
                        {
                            trans.Commit();
                            return i > 0;
                        }
                        else
                        {
                            trans.Rollback();
                            return false;
                        }
                    }
                    catch (System.Exception e)
                    {
                        return false;
                        trans.Rollback();
                        throw e;
                    }
                }
            }

        }

        public bool UpdateAgreement_YNSHigh_AuthorizeById(Model model)
        {

            string strSql = @"
               Update Agreement_YNSHigh_Authorize  SET 
                  AYA_Code=@AYA_Code,
                  AYHA_Code=@AYHA_Code,
                  Ctg_ID=@Ctg_ID,
                  HospitalCode=@HospitalCode,
                  HospitalName=@HospitalName,
                  HospitalGrad=@HospitalGrad,
                  HospitalRegionID=@HospitalRegionID,
                  DevelopmentLimitTime=@DevelopmentLimitTime,
                  EffectiveTime=@EffectiveTime,
                  MarketingManagementFee=@MarketingManagementFee,
                  BidPrice=@BidPrice,
                  DeliveryCode=@DeliveryCode,
                  DeliveryName=@DeliveryName,
                  AgreeAdjuestType=@AgreeAdjuestType,
                  ChangeContent=@ChangeContent,
                  Status=@Status,
                  DeliveryPrice=@DeliveryPrice,
                  BasePrice=@BasePrice,
                  CategoryCommodityName=@CategoryCommodityName,
                  CategorySystemName=@CategorySystemName,
                  CategoryCommName=@CategoryCommName,
                  CategorySpec=@CategorySpec,
                  Formulation=@Formulation,
                 BusinessModel=@BusinessModel where AYA_Code=@AYA_Code  

                     ";
            SqlParameter[] parameters = new SqlParameter[]
                                                  {
                      new SqlParameter("@AYA_Code", SqlDbType.NVarChar, 255),
                     new SqlParameter("@AYHA_Code", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Ctg_ID", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalCode", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalGrad", SqlDbType.NVarChar, 255),
                     new SqlParameter("@HospitalRegionID", SqlDbType.NVarChar, 255),
                     new SqlParameter("@DevelopmentLimitTime", SqlDbType.DateTime),
                     new SqlParameter("@EffectiveTime", SqlDbType.DateTime),
                      new SqlParameter("@MarketingManagementFee", SqlDbType.Decimal),
                      new SqlParameter("@BidPrice", SqlDbType.Decimal),
                     new SqlParameter("@DeliveryCode", SqlDbType.NVarChar, 255),
                     new SqlParameter("@DeliveryName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@AgreeAdjuestType", SqlDbType.NVarChar, 255),
                     new SqlParameter("@ChangeContent", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Status", SqlDbType.NVarChar, 255),
                      new SqlParameter("@DeliveryPrice", SqlDbType.Decimal),
                      new SqlParameter("@BasePrice", SqlDbType.Decimal),
                     new SqlParameter("@CategoryCommodityName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategorySystemName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategoryCommName", SqlDbType.NVarChar, 255),
                     new SqlParameter("@CategorySpec", SqlDbType.NVarChar, 255),
                     new SqlParameter("@Formulation", SqlDbType.NVarChar, 255),
                     new SqlParameter("@BusinessModel", SqlDbType.NVarChar, 255),
                            };
            parameters[0].Value = model.AYA_Code;
            parameters[1].Value = model.AYHA_Code;
            parameters[2].Value = model.Ctg_ID;
            parameters[3].Value = model.HospitalCode;
            parameters[4].Value = model.HospitalName;
            parameters[5].Value = model.HospitalGrad;
            parameters[6].Value = model.HospitalRegionID;
            parameters[7].Value = model.DevelopmentLimitTime;
            parameters[8].Value = model.EffectiveTime;
            parameters[9].Value = model.MarketingManagementFee;
            parameters[10].Value = model.BidPrice;
            parameters[11].Value = model.DeliveryCode;
            parameters[12].Value = model.DeliveryName;
            parameters[13].Value = model.AgreeAdjuestType;
            parameters[14].Value = model.ChangeContent;
            parameters[15].Value = model.Status;
            parameters[16].Value = model.DeliveryPrice;
            parameters[17].Value = model.BasePrice;
            parameters[18].Value = model.CategoryCommodityName;
            parameters[19].Value = model.CategorySystemName;
            parameters[20].Value = model.CategoryCommName;
            parameters[21].Value = model.CategorySpec;
            parameters[22].Value = model.Formulation;
            parameters[23].Value = model.BusinessModel;

            using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString))
            {
                conn.Open();
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        int i = SqlHelper.ExecuteNonQuery(trans, CommandType.Text, strSql, parameters);
                        if (i > 0)
                        {
                            trans.Commit();
                            return i > 0;
                        }
                        else
                        {
                            trans.Rollback();
                            return false;
                        }
                    }
                    catch (System.Exception e)
                    {
                        return false;
                        trans.Rollback();
                        throw e;
                    }
                }
            }

        }

        public DataTable GetDataByAgreement_YNSHigh_Authorize(Model model, int pageNo, int pageSize, ref int iRecordCount)
        {
            List<SqlParameter> parameters = new List<SqlParameter>();
            StringBuilder sqlWhere = new StringBuilder();
            if (!string.IsNullOrEmpty(model.AYA_Code.ToString()))
            {
                sqlWhere.Append(" AND AYA_Code=@AYA_Code");
                parameters.Add(new SqlParameter("@AYA_Code", SqlDbType.NVarChar, 255) { SqlValue = model.AYA_Code });
            }
            if (!string.IsNullOrEmpty(model.AYHA_Code.ToString()))
            {
                sqlWhere.Append(" AND AYHA_Code=@AYHA_Code");
                parameters.Add(new SqlParameter("@AYHA_Code", SqlDbType.NVarChar, 255) { SqlValue = model.AYHA_Code });
            }
            if (!string.IsNullOrEmpty(model.Ctg_ID.ToString()))
            {
                sqlWhere.Append(" AND Ctg_ID=@Ctg_ID");
                parameters.Add(new SqlParameter("@Ctg_ID", SqlDbType.NVarChar, 255) { SqlValue = model.Ctg_ID });
            }
            if (!string.IsNullOrEmpty(model.HospitalCode.ToString()))
            {
                sqlWhere.Append(" AND HospitalCode=@HospitalCode");
                parameters.Add(new SqlParameter("@HospitalCode", SqlDbType.NVarChar, 255) { SqlValue = model.HospitalCode });
            }
            if (!string.IsNullOrEmpty(model.HospitalName.ToString()))
            {
                sqlWhere.Append(" AND HospitalName=@HospitalName");
                parameters.Add(new SqlParameter("@HospitalName", SqlDbType.NVarChar, 255) { SqlValue = model.HospitalName });
            }
            if (!string.IsNullOrEmpty(model.HospitalGrad.ToString()))
            {
                sqlWhere.Append(" AND HospitalGrad=@HospitalGrad");
                parameters.Add(new SqlParameter("@HospitalGrad", SqlDbType.NVarChar, 255) { SqlValue = model.HospitalGrad });
            }
            if (!string.IsNullOrEmpty(model.HospitalRegionID.ToString()))
            {
                sqlWhere.Append(" AND HospitalRegionID=@HospitalRegionID");
                parameters.Add(new SqlParameter("@HospitalRegionID", SqlDbType.NVarChar, 255) { SqlValue = model.HospitalRegionID });
            }
            if (!string.IsNullOrEmpty(model.DevelopmentLimitTime.ToString()))
            {
                sqlWhere.Append(" AND DevelopmentLimitTime=@DevelopmentLimitTime");
                parameters.Add(new SqlParameter("@DevelopmentLimitTime", SqlDbType.NVarChar, 255) { SqlValue = model.DevelopmentLimitTime });
            }
            if (!string.IsNullOrEmpty(model.EffectiveTime.ToString()))
            {
                sqlWhere.Append(" AND EffectiveTime=@EffectiveTime");
                parameters.Add(new SqlParameter("@EffectiveTime", SqlDbType.NVarChar, 255) { SqlValue = model.EffectiveTime });
            }
            if (!string.IsNullOrEmpty(model.MarketingManagementFee.ToString()))
            {
                sqlWhere.Append(" AND MarketingManagementFee=@MarketingManagementFee");
                parameters.Add(new SqlParameter("@MarketingManagementFee", SqlDbType.NVarChar, 255) { SqlValue = model.MarketingManagementFee });
            }
            if (!string.IsNullOrEmpty(model.BidPrice.ToString()))
            {
                sqlWhere.Append(" AND BidPrice=@BidPrice");
                parameters.Add(new SqlParameter("@BidPrice", SqlDbType.NVarChar, 255) { SqlValue = model.BidPrice });
            }
            if (!string.IsNullOrEmpty(model.DeliveryCode.ToString()))
            {
                sqlWhere.Append(" AND DeliveryCode=@DeliveryCode");
                parameters.Add(new SqlParameter("@DeliveryCode", SqlDbType.NVarChar, 255) { SqlValue = model.DeliveryCode });
            }
            if (!string.IsNullOrEmpty(model.DeliveryName.ToString()))
            {
                sqlWhere.Append(" AND DeliveryName=@DeliveryName");
                parameters.Add(new SqlParameter("@DeliveryName", SqlDbType.NVarChar, 255) { SqlValue = model.DeliveryName });
            }
            if (!string.IsNullOrEmpty(model.AgreeAdjuestType.ToString()))
            {
                sqlWhere.Append(" AND AgreeAdjuestType=@AgreeAdjuestType");
                parameters.Add(new SqlParameter("@AgreeAdjuestType", SqlDbType.NVarChar, 255) { SqlValue = model.AgreeAdjuestType });
            }
            if (!string.IsNullOrEmpty(model.ChangeContent.ToString()))
            {
                sqlWhere.Append(" AND ChangeContent=@ChangeContent");
                parameters.Add(new SqlParameter("@ChangeContent", SqlDbType.NVarChar, 255) { SqlValue = model.ChangeContent });
            }
            if (!string.IsNullOrEmpty(model.Status.ToString()))
            {
                sqlWhere.Append(" AND Status=@Status");
                parameters.Add(new SqlParameter("@Status", SqlDbType.NVarChar, 255) { SqlValue = model.Status });
            }
            if (!string.IsNullOrEmpty(model.DeliveryPrice.ToString()))
            {
                sqlWhere.Append(" AND DeliveryPrice=@DeliveryPrice");
                parameters.Add(new SqlParameter("@DeliveryPrice", SqlDbType.NVarChar, 255) { SqlValue = model.DeliveryPrice });
            }
            if (!string.IsNullOrEmpty(model.BasePrice.ToString()))
            {
                sqlWhere.Append(" AND BasePrice=@BasePrice");
                parameters.Add(new SqlParameter("@BasePrice", SqlDbType.NVarChar, 255) { SqlValue = model.BasePrice });
            }
            if (!string.IsNullOrEmpty(model.CategoryCommodityName.ToString()))
            {
                sqlWhere.Append(" AND CategoryCommodityName=@CategoryCommodityName");
                parameters.Add(new SqlParameter("@CategoryCommodityName", SqlDbType.NVarChar, 255) { SqlValue = model.CategoryCommodityName });
            }
            if (!string.IsNullOrEmpty(model.CategorySystemName.ToString()))
            {
                sqlWhere.Append(" AND CategorySystemName=@CategorySystemName");
                parameters.Add(new SqlParameter("@CategorySystemName", SqlDbType.NVarChar, 255) { SqlValue = model.CategorySystemName });
            }
            if (!string.IsNullOrEmpty(model.CategoryCommName.ToString()))
            {
                sqlWhere.Append(" AND CategoryCommName=@CategoryCommName");
                parameters.Add(new SqlParameter("@CategoryCommName", SqlDbType.NVarChar, 255) { SqlValue = model.CategoryCommName });
            }
            if (!string.IsNullOrEmpty(model.CategorySpec.ToString()))
            {
                sqlWhere.Append(" AND CategorySpec=@CategorySpec");
                parameters.Add(new SqlParameter("@CategorySpec", SqlDbType.NVarChar, 255) { SqlValue = model.CategorySpec });
            }
            if (!string.IsNullOrEmpty(model.Formulation.ToString()))
            {
                sqlWhere.Append(" AND Formulation=@Formulation");
                parameters.Add(new SqlParameter("@Formulation", SqlDbType.NVarChar, 255) { SqlValue = model.Formulation });
            }
            if (!string.IsNullOrEmpty(model.BusinessModel.ToString()))
            {
                sqlWhere.Append(" AND BusinessModel=@BusinessModel");
                parameters.Add(new SqlParameter("@BusinessModel", SqlDbType.NVarChar, 255) { SqlValue = model.BusinessModel });
            }
            string strSql = string.Format(@"
WITH temp AS ( SELECT rn =  ROW_NUMBER() OVER (ORDER BY AYA_Code  desc), *FROM  Agreement_YNSHigh_Authorize WHERE 1=1 {0} )
SELECT *,rc=(select count(1) from temp) FROM temp WHERE rn BETWEEN {1} AND {2}

                     ", sqlWhere.ToString(), (pageNo - 1) * pageSize   1, pageNo * pageSize);


            DataTable dt = SqlHelper.Query(strSql, parameters.ToArray()).Tables[0];
            if (dt != null)
            {
                iRecordCount = int.Parse(dt.Rows[0]["rc"].ToString());
                return dt;
            }
            else
            {
                iRecordCount = 0;
                return null;
            }
        }

        public bool DeleteAgreement_YNSHigh_Authorize(string AYA_Code)
   {
        List<SqlParameter> parameters = new List<SqlParameter>();
                    string strSql = string.Format(@"
DELETE Agreement_YNSHigh_Authorize WHERE AYA_Code=AYA_Code

                     ";
     int rowAffect =SqlHelper.Query(strSql, parameters.ToArray()).ToInt();;
      return rowAffect > 0 ? true : false;
      }

        protected void btnExcel_Click(object sender, System.EventArgs e)
        {
            int intPageNo = 1;
            int intPageSize = 65535;
            int recordCount = 0;
            DataTable dt = GetUnAuthorizeAgreePassedDT( Model model intPageNo, intPageSize, out recordCount); 
     string strFileName = "导出Excel"   System.DateTime.Now.ToString(" yyyyMMddHHmmss");
        ExcelUtility excelUtil = new ExcelUtility(this, strFileName);
            List<ExcelHeader> headerS = new List<ExcelHeader>() { 
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.日期, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.日期, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },
          };
            excelUtil.CreateHeader(headerS);
            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    List<string> dataVals = new List<string>() { 
                            dr[" AYA_Code"].ToString()  
                            dr[" AYHA_Code"].ToString()  
                            dr[" Ctg_ID"].ToString()  
                            dr[" HospitalCode"].ToString()  
                            dr[" HospitalName"].ToString()  
                            dr[" HospitalGrad"].ToString()  
                            dr[" HospitalRegionID"].ToString()  
                            dr[" DevelopmentLimitTime"].ToString()  
                            dr[" EffectiveTime"].ToString()  
                            dr[" MarketingManagementFee"].ToString()  
                            dr[" BidPrice"].ToString()  
                            dr[" DeliveryCode"].ToString()  
                            dr[" DeliveryName"].ToString()  
                            dr[" AgreeAdjuestType"].ToString()  
                            dr[" ChangeContent"].ToString()  
                            dr[" Status"].ToString()  
                            dr[" DeliveryPrice"].ToString()  
                            dr[" BasePrice"].ToString()  
                            dr[" CategoryCommodityName"].ToString()  
                            dr[" CategorySystemName"].ToString()  
                            dr[" CategoryCommName"].ToString()  
                            dr[" CategorySpec"].ToString()  
                            dr[" Formulation"].ToString()  
                            dr[" BusinessModel"].ToString()  
          };       
                    excelUtil.CreateItemRow(dataVals);
                }
            }
            excelUtil.Export();
            }

百度网盘:链接: 密码:7s6r

二、打开自动生成工具(本身本人用C 写的)。

窗体BaseSqlBuilder承继自Form不必多说。ResourceManager是怎么样吗,ResourceManager便是三个能源文件,用于拍卖音讯,可能路线如何。前边补上海教室。
新建3个BaseSql用于拍卖sql。把页面上的控件音信传递过去。封装贰个多少的款型。

类别代码目录结构:

1、张开VS20拾,新建多少个空网址,保存至News文件夹。

4R9QU1Y7XFDV43BKKBVDUK3.png

 

威尼斯官网 1

if ((bool)inputSql[7])主若是对控件值得推断,是还是不是勾选上,也正是是或不是需求生成改方法。导出的措施重要在小卖部曾经封装好的代码上提取重复代码的,平日我们在做功效的时候只须求写那个代码就能够。

 

 

87C8U$IKXP(%OJ{M~HT2YPA.png

 

 

using System;
using System.Windows.Forms;

namespace DevLogHelper
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new BaseSqlBuilder());
        }

    }
}

5.网站克隆主类

 

财富文件以及化解方案结构。

WebPageService:

威尼斯官网 2

第一是对控件传递过来值得检查,参数是或不是为空等。

前二日朋友叫笔者模仿三个网址,刚刚伊始,笔者一个页面1个页面查看源码并复制和封存,花了自家无数时光,三个字“累”,为了缓慢化解职业量,小编写了个网址“克隆工具”,一键克隆,比起人工操作, 
频率提升了200%以上,准确度也大大进步,即便网络也不少网址克隆工具,但本人觉着作为二个程序员,要有点切磋精神,哈哈哈,能够遵照自身的须求自由编写本身索要的成效。

 

      #region 导出excel方法

            strBuilder.AppendLine(@"     protected void btnExcel_Click(object sender, System.EventArgs e)
        {
            int intPageNo = 1;
            int intPageSize = 65535;
            int recordCount = 0;
            DataTable dt = GetUnAuthorizeAgreePassedDT( Model model intPageNo, intPageSize, out recordCount); ");
            strBuilder.AppendLine("     string strFileName = ""   "导出Excel"   ""   System.DateTime.Now.ToString(" "   "yyyyMMddHHmmss"   "");");
            strBuilder.AppendLine(@"        ExcelUtility excelUtil = new ExcelUtility(this, strFileName);
            List<ExcelHeader> headerS = new List<ExcelHeader>() { ");

            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                string Type = dr.Table.Columns[i].DataType.ToString();
                switch (Type)
                {
                    case "System.DateTime":
                        strBuilder.AppendLine("           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.日期, Width = 15 },");
                        break;
                    default:
                        strBuilder.AppendLine("           new ExcelHeader() { Name = "字段名称自行补全", DataType = EnumColumnDataType.文本, Width = 15 },");
                        break;
                }
            }
            strBuilder.AppendLine(@"          };
            excelUtil.CreateHeader(headerS);
            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    List<string> dataVals = new List<string>() { ");


            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                strBuilder.AppendLine("                            dr[" "   dr.Table.Columns[i]   ""].ToString()  ");
            }

            strBuilder.AppendLine(@"          };       
                    excelUtil.CreateItemRow(dataVals);
                }
            }
            excelUtil.Export();
            }
           "); 
            #endregion

威尼斯官网 3

威尼斯官网 4

威尼斯官网 5

 

重在代码如下:

            if ((bool)inputSql[4])
            {
                returnstr.AppendLine(strBuilder.ToString());
            }
            strBuilder = new StringBuilder();
            #region 生成更新Update 方法

            #region 生成更新Update sql语句

            strTmp = new StringBuilder(); //sql 
            try
            {
                for (int i = 0; i < dr.Table.Columns.Count; i  )//生成Update 
                {
                    if (i == 0)
                    {
                        strTmp.AppendLine("               Update "   Table   "  SET ");
                    }
                    if (i == dr.Table.Columns.Count - 1)
                    {


                        strTmp.AppendLine("                 "   dr.Table.Columns[i].ToString()   "="   "@"   dr.Table.Columns[i].ToString()   " where "   Id   "="   "@"   Id   "  ");
                    }
                    else
                    {
                        strTmp.AppendLine("                  "   dr.Table.Columns[i].ToString()   "="   "@"   dr.Table.Columns[i].ToString()   ",");
                    }
                }
            }
            catch (System.Exception ex)
            {

                throw ex;
            }

            #endregion




            strBuilder.AppendLine("   public bool Update"   Table   "ById(Model model)");
            strBuilder.AppendLine(@"    {   
           ");
            strBuilder.AppendLine("                    string strSql = @"");
            strBuilder.AppendLine(strTmp.ToString());
            strBuilder.AppendLine("                     ";");

            strBuilder.AppendLine(@"                 SqlParameter[] parameters = new SqlParameter[]
                                                  {");
            //参数类型
            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                string Type = dr.Table.Columns[i].DataType.ToString();
                switch (Type)
                {
                    case "System.String":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.NVarChar, 255),");
                        break;
                    case "System.Int":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.Int),");
                        break;
                    case "System.DateTime":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.DateTime),");
                        break;
                    case "System.Decimal":
                        strBuilder.AppendLine("                      new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.Decimal),");
                        break;
                    default:
                        strBuilder.AppendLine("                      new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.NVarChar, 255),");
                        break;
                }
            }
            strBuilder.AppendLine(@"                            };");

            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                strBuilder.AppendLine("                        parameters["   i   "].Value ="   "model."   dr.Table.Columns[i]   ";");
            }

            strBuilder.AppendLine(@"
            using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString))
            {
                conn.Open();
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        int i = SqlHelper.ExecuteNonQuery(trans, CommandType.Text, strSql, parameters);
                          if (i > 0)
                        {
                            trans.Commit();
                            return i > 0;
                        }
                        else
                        {
                            trans.Rollback();
                            return false;
                        }
                    }
                    catch (System.Exception e)
                    {
                        return false;
                        trans.Rollback();
                        throw e;
                    }
                  }
               }
               ");
            strBuilder.AppendLine("}");

            #endregion

            if ((bool)inputSql[5])
            {
                returnstr.AppendLine(strBuilder.ToString());
            }
            strBuilder = new StringBuilder();
            #region 生成查询方法

            strBuilder.AppendLine("   public DataTable GetDataBy"   Table   "(Model model , int pageNo, int pageSize, ref int iRecordCount)");
            strBuilder.AppendLine(@"    {    ");
            strTmp = new StringBuilder();
            strTmp.AppendLine("WITH temp AS ( SELECT rn =  ROW_NUMBER() OVER (ORDER BY "   Id   "  desc), *FROM  "   Table   " WHERE 1=1 {0} )");
            strTmp.AppendLine("SELECT *,rc=(select count(1) from temp) FROM temp WHERE rn BETWEEN {1} AND {2}");

            strBuilder.AppendLine("        List<SqlParameter> parameters = new List<SqlParameter>();");
            strBuilder.AppendLine("        StringBuilder sqlWhere = new StringBuilder();");
            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                strBuilder.AppendLine("       if (!string.IsNullOrEmpty(model."   dr.Table.Columns[i].ToString()   ".ToString())) ");
                strBuilder.AppendLine("       {");
                strBuilder.AppendLine("          sqlWhere.Append(" AND "   dr.Table.Columns[i].ToString()   "=@"   dr.Table.Columns[i].ToString()   "");");
                strBuilder.AppendLine("          parameters.Add(new SqlParameter("@"   dr.Table.Columns[i].ToString()   "", SqlDbType.NVarChar, 255) { SqlValue = model."   dr.Table.Columns[i].ToString()   " });");
                strBuilder.AppendLine("       } ");
            }
            strBuilder.AppendLine("                    string strSql = string.Format(@"");
            strBuilder.AppendLine(strTmp.ToString());
            strBuilder.AppendLine("                     " ,sqlWhere.ToString(), (pageNo - 1) * pageSize   1, pageNo * pageSize);");

            strBuilder.AppendLine(@"    

                   DataTable dt = SqlHelper.Query(strSql, parameters.ToArray()).Tables[0];
                  if (dt!=null)
                   {");
            strBuilder.AppendLine("        iRecordCount = int.Parse(dt.Rows[0][""   "rc"   ""].ToString());");
            strBuilder.AppendLine(@"      return dt;
                            }
                           else
                          {
                              iRecordCount = 0;
                            return null;
                        }
                }    ");

            #endregion

            if ((bool)inputSql[6])
            {
                returnstr.AppendLine(strBuilder.ToString());
            }
            strBuilder = new StringBuilder();
            #region 生成删除的方法

            strBuilder.AppendLine("    public bool Delete"   Table   "(string "   Id   ")");
            strBuilder.AppendLine("   {");
            strBuilder.AppendLine("        List<SqlParameter> parameters = new List<SqlParameter>();");
            strTmp = new StringBuilder();
            strTmp.AppendLine("DELETE "   Table   " WHERE "   Id   "="   Id   "");
            strBuilder.AppendLine("                    string strSql = string.Format(@"");
            strBuilder.AppendLine(strTmp.ToString());
            strBuilder.AppendLine("                     ";");
            strBuilder.AppendLine("     int rowAffect =SqlHelper.Query(strSql, parameters.ToArray()).ToInt();;");
            strBuilder.AppendLine("      return rowAffect > 0 ? true : false;");
            strBuilder.AppendLine("      }");

            #endregion

            if ((bool)inputSql[7])
            {
                returnstr.AppendLine(strBuilder.ToString());
            }
            strBuilder = new StringBuilder();
interface IWebCloneWorker
    {
        void Start();
        void Cancel();
    }

1、设计页面

威尼斯官网 6

 

 

除此以外做了多少个成效,可是否很好用,感兴趣的仇人能够去下载源码看一下。
github地址:https://github.com/Jimmey-Jiang/JWorkHelper

6.部分事变、委托类:

 

威尼斯官网 7

轻松易行的办事流程:

 private void InitDataGrid()
    {
        DataTable dt = new DataTable();
        if (this.txtSearch.Text != "")
        {
            dt = oNews.GetInfoForSearch(this.txtSearch.Text.Trim());
        }
        else
            dt = oNews.GetInfo();

        for (int i = 0; i < dt.Rows.Count; i  )
        {
            string sFlagRecomTemp = "";
            //推荐标记
            string sFlagRecom = dt.Rows[i]["FlagRecom"].ToString();
            {
                if (sFlagRecom == "0")
                {
                    sFlagRecomTemp = "否";
                }
                if (sFlagRecom == "1")
                {
                    sFlagRecomTemp = "是";
                }
            }
            dt.Rows[i]["FlagRecom"] = sFlagRecomTemp;
        }
        int cup = Convert.ToInt32(this.lbCurrentPage.Text);
        PagedDataSource ps = new PagedDataSource();
        ps.DataSource = dt.DefaultView;
        ps.AllowPaging = true;
        ps.PageSize = 24;
        ps.CurrentPageIndex = cup - 1;
        this.lbPage.Text = ps.PageCount.ToString();

        this.ddlPage.Items.Clear();
        for (int i = 1; i < ps.PageCount   1; i  )
        {
            ListItem li = new ListItem(i.ToString(), i.ToString());
            this.ddlPage.Items.Add(i.ToString());
        }
        this.LinkUp.Enabled = true;
        this.LinkDown.Enabled = true;
        this.ddlPage.SelectedValue = cup.ToString();
        if (Convert.ToInt16(this.lbCurrentPage.Text) < 2)
        {
            this.LinkFirst.Enabled = false;
            this.LinkUp.Enabled = false;
        }
        else
        {
            this.LinkFirst.Enabled = true;
            this.LinkUp.Enabled = true;
        }
        if (Convert.ToInt16(this.lbCurrentPage.Text) >= Convert.ToInt16(this.lbPage.Text))
        {
            this.LinkDown.Enabled = false;
            this.LinkLast.Enabled = false;
        }
        else
        {
            this.LinkDown.Enabled = true;
            this.LinkLast.Enabled = true;
        }

        this.dgList.DataSource = ps;
        this.dgList.DataBind();

        if (dt.Rows.Count < 1)
        {
            this.currentPage.Style.Add("display", "none");
            this.currentPageError.Style.Add("display", "");
        }
        else
        {
            this.currentPage.Style.Add("display", "");
            this.currentPageError.Style.Add("display", "none");
        }
    }

 private void InitNewsEdit()
    {
        int iId = 0;
        string sEdit = "";
        if (Request.Params["edit"] != null)
        {
            sEdit = Request.Params["edit"].ToString().ToLower();
            ViewState["flagedit"] = sEdit;
        }
        if (Request.Params["id"] != null)
        {
            iId = Convert.ToInt32(Request.Params["id"].ToString());
            ViewState["id"] = iId;
        }
        switch (sEdit)
        {
            case "add":
                {
                    this.lbTitle.Text = "添加新闻";
                    sFlagMsg = "fail";
                }
                break;
            case "edit":
                {
                    this.lbTitle.Text = "修改新闻";
                    sFlagMsg = "ok";

                    CNewsInfo oNewsInfo = new CNewsInfo();
                    oNewsInfo = oNews.GetInfo(iId);

                    int iSid = 0;
                    iSid = oNewsInfo.Nid;

                    this.txtTitle.Text = oNewsInfo.Title;
                    this.txtCreator.Text = oNewsInfo.Creator;
                    this.ddlFlagRecom.SelectedValue = oNewsInfo.FlagRecom;
                    this.txtContent.Text = oNewsInfo.Content;
                }
                break;
            default:
                break;
        }
    }

    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        int iId = 0;
        iId = CTypeConverter.StrToInt(ViewState["id"].ToString());

        string sTitle = "";
        string sCreator = "";
        string sContent = "";
        int iHits = 0;
        string sFlagRecom = "";

        sTitle = this.txtTitle.Text.Trim();
        sCreator = this.txtCreator.Text.Trim();
        sContent = this.txtContent.Text.Trim();
        sFlagRecom = this.ddlFlagRecom.SelectedValue;

        string sFlagEdit = ViewState["flagedit"].ToString();
        switch (sFlagEdit)
        {
            case "add":
                {
                    CNewsInfo oNewsInfo = new CNewsInfo();
                    oNewsInfo.Title = sTitle;
                    oNewsInfo.Creator = sCreator;
                    oNewsInfo.Content = sContent;
                    oNewsInfo.Hits = iHits;
                    oNewsInfo.FlagRecom = sFlagRecom;

                    oNews.Insert(oNewsInfo);
                    Response.Redirect("SystemInfo.aspx?msgname="   Server.UrlEncode("新闻添加成功!")   "&backpage=NewsEdit.aspx?edit=add&backname="   Server.UrlEncode("继续添加新闻"));
                }
                break;
            case "edit":
                {
                    CNewsInfo oNewsInfo = new CNewsInfo();
                    oNewsInfo = oNews.GetInfo(iId);

                    oNewsInfo.Title = sTitle;
                    oNewsInfo.Creator = sCreator;
                    oNewsInfo.Content = sContent;
                    oNewsInfo.FlagRecom = sFlagRecom;

                    oNews.Update(iId, oNewsInfo);
                    Response.Redirect("SystemInfo.aspx?msgname="   Server.UrlEncode("新闻修改成功!")   "&backpage=NewsList.aspx&backname="   Server.UrlEncode("返回新闻列表"));
                }
                break;
            default:
                break;
        }
    }

率先大家是浮动Model。有了Model才有上边包车型大巴增加和删除改查的不贰秘籍。
实际上也很轻巧,dr.Table.Columns[i].DataType.ToString(),大家正是依附DataRow循环table列,决断字段类型,然后依据对应的字段类型封装成model.单选框暗许勾选的,这里先消除勾选,输入表名,点击生成,然后和数量库表对应,看一下效率。

 

2、增加新项:NewsList.aspx、News艾德it.aspx贰个Web窗体,新建文件夹:Style(main.css、general.css),新建文件夹:Images(分界面所需图片)。

using System;
using System.Resources;
using System.Text;
using System.Windows.Forms;
using DevLogHelper.Resources;

namespace DevLogHelper
{
    public partial class BaseSqlBuilder : Form
    {
        readonly ResourceManager _rm = new ResourceManager(typeof(ResourceDevCode));
        public BaseSqlBuilder()
        {
            InitializeComponent();
        }

        private void BaseSqlBuilder_Load(object sender, EventArgs e)
        {

        }
        /// <summary>
        /// 生成
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnCreate_Click(object sender, EventArgs e)
        {
            string msg = _rm.GetString("BaseSqlTip");
            try
            {
                BaseSql.BaseSql sq = new BaseSql.BaseSql();
                StringBuilder str = sq.BuilderCode(txtInput.Text, cbIsModel, txt_TableName.Text, ckb_Model.Checked, ckb_Insert.Checked,ckb_Update.Checked,ckb_Select.Checked,ckb_Delete.Checked,ckbExcel.Checked);
                txtResult.Text = str.ToString();
                Clipboard.SetDataObject(str.ToString());
            }
            catch (Exception ex)
            {
                msg = ex.Message;
            }
            labTip.Text = msg;
        }

    }
}
public class UrlParser
    {
        public static UrlModel Parse(string url)
        {
            UrlModel model = new UrlModel();

            //默认
            if (url.Length < 8)
                throw new Exception("url参数不正确");
            else if (!url.ToLower().StartsWith("http:") && !url.ToLower().StartsWith("https:"))
                throw new Exception("url格式有误");

            if (url.LastIndexOf('/') < 8)
                url = url   "/";

            Regex reg = new Regex("(?<scheme>(http|https))://(?<host>. ?)/", RegexOptions.Singleline);

            if (reg.IsMatch(url))
            {
                string scheme = reg.Match(url).Groups["scheme"].Value;
                string host = reg.Match(url).Groups["host"].Value;
                if (host.Contains(":"))
                {
                    var aa = host.Split(':');
                    if (aa.Length == 2)
                    {
                        model.Host = aa[0];
                        model.Port = int.Parse(aa[1]);
                    }
                }
                else
                {
                    model.Host = host;
                    model.Port = 80;
                }

                int index = url.IndexOf('/', 8);

                model.RelatedPath = url.Substring(index);
                model.AbsoluteUri = url;
                model.Scheme = scheme;
                model.CurrPath = url.Substring(0, url.LastIndexOf("/"));

                if (80 == model.Port)
                {
                    model.RootPath = string.Format("{0}://{1}", model.Scheme, model.Host);
                }
                else
                {
                    model.RootPath = string.Format("{0}://{1}:{2", model.Scheme, model.Host, model.Port);
                }
            }
            else
            {
                throw new Exception("url解析失败!");
            }

            return model;
        }
    }

四、填入DBBuildCode工具,点击“生成”按钮,在工具目录生成一个文本(CNewsInfo.cs、CNews.cs)。注:表结构中剧情能够借助于ultraedit来管理。

跟踪BuilderCode到BaseSql类。

public class UrlModel
    {
        public string RelatedPath { get; set; }
        public string AbsoluteUri { get; set; }
        public string CurrPath { get; set; }
        public string RootPath { get; set; }

        public string Host { get; set; }
        public int Port { get; set; }
        public string Scheme { get; set; }
    }

 

3.png

public class HttpTool
    {
        public static string HttpGet(string url, string referer, string encoding, out string msg)
        {
            msg = string.Empty;
            string result = string.Empty;
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

                //request.ContentType = "application/x-www-form-urlencoded";
                request.Accept = "text/html,application/xhtml xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
                request.Referer = referer;
                request.Method = "GET";
                request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36";
                //request.Headers.Add("Accept-Language", "zh-cn");
                //request.Headers.Add("Accept-Encoding", "gzip,deflate");

                request.Timeout = 60000;//一分钟

                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream responseStream = response.GetResponseStream();
                if (responseStream != null)
                {
                    StreamReader reader = new StreamReader(responseStream, System.Text.Encoding.GetEncoding(encoding));
                    result = reader.ReadToEnd();
                    reader.Close();
                    responseStream.Close();
                    request.Abort();
                    response.Close();
                    return result.Trim();
                }
            }
            catch (Exception ex)
            {
                msg = ex.Message   ex.StackTrace;
            }

            return result;
        }

        public static void DownFile(string uRLAddress, string localPath, string filename)
        {
            WebClient client = new WebClient();
            Stream str = client.OpenRead(uRLAddress);
            StreamReader reader = new StreamReader(str);
            byte[] mbyte = new byte[1000000];
            int allmybyte = (int)mbyte.Length;
            int startmbyte = 0;

            while (allmybyte > 0)
            {
                int m = str.Read(mbyte, startmbyte, allmybyte);
                if (m == 0)
                {
                    break;
                }
                startmbyte  = m;
                allmybyte -= m;
            }

            reader.Dispose();
            str.Dispose();

            string path = Path.Combine(localPath, filename);
            FileStream fstr = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write);
            fstr.Write(mbyte, 0, startmbyte);
            fstr.Flush();
            fstr.Close();
        }
    }

 

2.png

 

威尼斯官网 8

            string Table = inputSql[2].ToString();
            if (string.IsNullOrWhiteSpace(inputCode))
            {
                inputCode = "select *from "   Table;
            }
            StringBuilder returnstr = new StringBuilder();
            StringBuilder strBuilder = new StringBuilder();
            DataSet ds = SqlHelper.Query(inputCode);
            DataRow dr = null;
            DataTable dt = new DataTable();

 

 

威尼斯官网 9

/// <summary>
    /// 网页处理服务工具
    /// </summary>
    public class WebPageService
    {
        private static string[] excludekeys = { "http:", "https:", "//", "#", "javascript:", "?", "tel:", "mailto:" };
        /// <summary>
        /// 获取所有html元素的href属性值,只获取站点本地的链接,站外的不获取
        /// </summary>
        /// <param name="html">页面的html源码</param>
        /// <returns></returns>
        public static List<UrlModel> GetLocalHrefs(string url,string html)
        {
            if (string.IsNullOrEmpty(html))
                return new List<UrlModel>();

            Dictionary<string, UrlModel> urls = GetHrefs(url,html);
            List<UrlModel> newUrls = new List<UrlModel>();

            if (null != urls)
            {
                foreach (string key in urls.Keys)
                {
                    string newkey = key.ToLower();
                    bool iscontained = false;
                    foreach (var exkey in excludekeys)
                    {
                        if (newkey.IndexOf(exkey) == 0)
                        {
                            iscontained = true;
                            break;
                        }
                    }

                    if (!iscontained) {
                        //只获取本地路径
                        newUrls.Add(urls[key]);
                    }
                }
            }

            return newUrls;
        }

        /// <summary>
        /// 获取所有html元素的src属性值,只获取站点本地的链接,站外的不获取
        /// </summary>
        /// <param name="html">页面的html源码</param>
        /// <returns></returns>
        public static List<UrlModel> GetLocalSrcs(string url,string html)
        {
            if (string.IsNullOrEmpty(html))
                return new List<UrlModel>();

            Dictionary<string, UrlModel> urls = GetSrc(url, html);
            List<UrlModel> newUrls = new List<UrlModel>();

            if (null != urls)
            {
                foreach (string key in urls.Keys)
                {
                    string newkey = key.ToLower();
                    bool iscontained = false;
                    foreach (var exkey in excludekeys)
                    {
                        if (newkey.IndexOf(exkey) == 0)
                        {
                            iscontained = true;
                            break;
                        }
                    }

                    if (!iscontained)
                    {
                        //只获取本地路径
                        newUrls.Add(urls[key]);
                    }
                }
            }

            return newUrls;
        }

        private static Dictionary<string, UrlModel> GetHrefs(string url,string html)
        {
            if (string.IsNullOrEmpty(html))
                return null;

            UrlModel currUrl = UrlParser.Parse(url);
            Dictionary<string, UrlModel> urls = new Dictionary<string, UrlModel>();
            Regex reg = new Regex("href="(?<Url>. ?)"", RegexOptions.IgnoreCase);

            if (currUrl != null)
            {
                AddUrlModel(html, currUrl, urls, reg);
            }

            return urls;
        }

        private static Dictionary<string, UrlModel> GetSrc(string url,string html)
        {
            if (string.IsNullOrEmpty(html))
                return null;

            UrlModel currUrl = UrlParser.Parse(url);
            Dictionary<string, UrlModel> urls = new Dictionary<string, UrlModel>();
            Regex reg = new Regex("(src="(?<Url>. ?)"|url\((?<Url>. ?)\))", RegexOptions.IgnoreCase);

            if (currUrl != null)
            {
                AddUrlModel(html, currUrl, urls, reg);
            }

            return urls;
        }

        private static void AddUrlModel(string html, UrlModel currUrl, Dictionary<string, UrlModel> urls, Regex reg)
        {
            if (reg.IsMatch(html))
            {
                MatchCollection matchs = reg.Matches(html);
                foreach (Match item in matchs)
                {
                    try
                    {
                        string strUrl = item.Groups["Url"].Value;
                        UrlModel model = new UrlModel();
                        model.RelatedPath = strUrl;
                        model.CurrPath = currUrl.CurrPath;
                        model.RootPath = currUrl.RootPath;
                        model.Scheme = currUrl.Scheme;
                        model.Port = currUrl.Port;
                        model.Host = currUrl.Host;

                        if (strUrl.StartsWith("/"))
                        {
                            //绝对目录情况下
                            model.AbsoluteUri = string.Format("{0}{1}", model.RootPath, model.RelatedPath);
                        }
                        else
                        {
                            //相对目录情况下
                            string currPath = model.CurrPath;
                            int depth = 0;
                            string path = model.RelatedPath;

                            if (path.StartsWith(".."))
                            {
                                try
                                {
                                    while (path.StartsWith(".."))
                                    {
                                        depth  ;
                                        path = path.Substring(3);
                                        currPath = currPath.Substring(0, currPath.LastIndexOf("/"));
                                    }

                                    model.AbsoluteUri = string.Format("{0}/{1}", currPath, path);
                                }
                                catch
                                {

                                }
                            }
                            else
                            {
                                model.AbsoluteUri = string.Format("{0}/{1}", currPath, path);
                            }

                        }

                        strUrl = strUrl.Trim().ToLower();

                        urls.Add(strUrl, model);
                    }
                    catch
                    {
                    }
                }
            }
        }
    }

以三个谍报系统为例子,写出详细建设进度,分享一下,以备后用。涉及工具备:VS2010、PowerDesigner、SQL Server 2008、DBBuildCode、ultraedit。

实在分界面尤其轻巧的。便是多少个label、多选框、容器。
看下代码:

二.新建立模型型类(UrlModel.cs)

二、设计数据库

    #region 生成插入Insert方法

            #region 生成插入sql语句

            StringBuilder strTmp = new StringBuilder();
            try
            {
                for (int i = 0; i < dr.Table.Columns.Count; i  )//生成insert 
                {
                    if (i == 0)
                    {
                        strTmp.AppendLine("               INSERT "   Table   "(");
                    }
                    if (i == dr.Table.Columns.Count - 1)
                    {
                        strTmp.AppendLine("                 "   dr.Table.Columns[i].ToString()   ")");
                    }
                    else
                    {
                        strTmp.AppendLine("                 "   dr.Table.Columns[i].ToString()   ",");
                    }
                }

                for (int i = 0; i < dr.Table.Columns.Count; i  )
                {
                    if (i == 0)
                    {
                        strTmp.AppendLine("                 VALUES "   "(");
                    }
                    if (i == dr.Table.Columns.Count - 1)
                    {
                        strTmp.AppendLine("                   @"   dr.Table.Columns[i].ToString()   ")");
                    }
                    else
                    {
                        strTmp.AppendLine("                    @"   dr.Table.Columns[i].ToString()   ",");
                    }

                }
            }
            catch (System.Exception ex)
            {

                throw ex;
            }

            #endregion





            strBuilder.AppendLine("   public bool Insert"   Table   "(Model model)");
            strBuilder.AppendLine(@"    {   
           ");
            strBuilder.AppendLine("                    string strSql = @"");
            strBuilder.AppendLine(strTmp.ToString());
            strBuilder.AppendLine("                     ";");

            strBuilder.AppendLine(@"                 SqlParameter[] parameters = new SqlParameter[]
                                                  {");
            //参数类型
            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                string Type = dr.Table.Columns[i].DataType.ToString();
                switch (Type)
                {
                    case "System.String":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.NVarChar, 255),");
                        break;
                    case "System.Int":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.Int),");
                        break;
                    case "System.Int32":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.Int),");
                        break;
                    case "System.DateTime":
                        strBuilder.AppendLine("                     new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.DateTime),");
                        break;
                    case "System.Decimal":
                        strBuilder.AppendLine("                      new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.Decimal),");
                        break;
                    default:
                        strBuilder.AppendLine("                      new SqlParameter(""   "@"   dr.Table.Columns[i]   "", SqlDbType.NVarChar, 255),");
                        break;
                }
            }
            strBuilder.AppendLine(@"                            };");

            for (int i = 0; i < dr.Table.Columns.Count; i  )
            {
                strBuilder.AppendLine("                        parameters["   i   "].Value ="   "model."   dr.Table.Columns[i]   ";");
            }

            strBuilder.AppendLine(@"
            using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString))
            {
                conn.Open();
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        int i = SqlHelper.ExecuteNonQuery(trans, CommandType.Text, strSql, parameters);
                          if (i > 0)
                        {
                            trans.Commit();
                            return i > 0;
                        }
                        else
                        {
                            trans.Rollback();
                            return false;
                        }
                    }
                    catch (System.Exception e)
                    {
                         return false;
                        trans.Rollback();
                        throw e;
                    }
                  }
               }
               ");
            strBuilder.AppendLine("}");

            #endregion

UrlParser:

 

此地要是传递过来的sql语句为空,大家会基于表名自动生成查询SQL。然后依照ado.net 链接数据库生成DataSet 、DataRow 、DataTable 等。当然这里得有SqlHelper。SqlHelper假使要求能够去本身源码上下载,稍后会放上源码。主假设链接数据库。实践SQL了。

威尼斯官网 10

 

然后看一下变通的代码展现:

本文由澳门威利斯人发布于办公软件,转载请注明出处:威尼斯官网:自动生成Model,仿站工具

关键词: 澳门威利斯人 ASP.NET 随笔