Asp.Net 小型网站的制作(一),涵盖了asp.net里面所有的基础知识

首先看一下效果图,这个是登录页面
这里写图片描述
登录窗口很简单
接下来是数据显示的窗口
这里写图片描述
下来是编辑的窗口
这里写图片描述
还有新增的窗口
这里写图片描述

还有其他的窗口,我就不多说了。
首先看一下数据库部分的操作!
在这里我写了一个连接数据库的类。

using System;
using System.Data;
using System.Data.SqlClient;

namespace BusinessRules
{

    /// </summary>
    public class DB
    {
        public DB()
        {
        }

        string connStr = System.Web.Configuration.WebConfigurationManager.AppSettings["sqlLink"];



        #region 获取查询结果,DataSet GetSqlDataSet(string sqlString)
        /// <summary>
        /// 获取查询结果。返回类型为DataSet
        /// sqlString 参数为查询的SQL语句
        /// </summary>
        public DataSet GetSqlDataSet(string sqlString)
        {
            //定义返回变量
            //实例化数据集DataSet,对象名为ds
            DataSet ds = new DataSet();
            try
            {
                //实例化连接对象SqlConnection,对象名为sqlConn
                SqlConnection sqlConn = new SqlConnection(connStr);

                //用查询的SQL(sqlString)语句和连接对象sqlConn实例化数据接口SqlDataAdapter
                //对象名为da
                SqlDataAdapter da = new SqlDataAdapter(sqlString, sqlConn);

                //da.Fill(ds)是数据接口(SqlDataAdapter)提供的方法
                //具体作用为:
                //打开与数据库的连接
                //将查询的SQL语句发送到数据库服务器
                //接受返回的查询结果
                //并将结果填充到数据集对象ds中
                //关闭与数据库的连接
                da.Fill(ds);
            }
            catch (Exception e)
            {
                //抛出捕捉到的异常
                throw (e);
            }
            //返回查询到的结果
            return ds;
        }
        #endregion

        #region 执行增、删或改的SQL语句 int ExecuteSql(string sqlString)
        /// <summary>
        /// 执行增、删或改的SQL语句
        /// 返回值为受影响的行数(记录数)
        /// sqlString 参数为增、删或改的SQL语句
        /// </summary>
        public int ExecuteSql(string sqlString)
        {
            int i = 0;
            try
            {
                ////实例化连接对象SqlConnection,对象名为sqlConn
                SqlConnection sqlConn = new SqlConnection(connStr);

                //用查询的SQL(sqlString)语句和连接对象sqlConn实例化SqlCommand
                //对象名为sqlCmd
                SqlCommand sqlCmd = new SqlCommand(sqlString, sqlConn);

                //打开与数据库的连接
                sqlConn.Open();

                //将增、删或改的SQL语句发送到数据库服务器
                //并接受返回的结果,返回的结果为受影响的行数(记录数)
                i = sqlCmd.ExecuteNonQuery();

                //关闭与数据库的连接
                sqlConn.Close();
            }
            catch (Exception e)
            {
                Exception ee = new Exception(sqlString + e.Message);
                throw (ee);
            }
            return i;
        }
        #endregion

    }
}

数据库连接部分的代码在Web.config文件里面写着

<?xml version="1.0" encoding="utf-8"?>

<!--
  有关如何配置 ASP.NET 应用程序的详细消息,请访问
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->

<configuration>

  <appSettings>
    <add key="sqlLink" value="server=59.74.109.252;database=asp.Net;uid=sa;password=123456"/>
    <add key="myPageSize" value="11"/>
  </appSettings>
  <connectionStrings/>
    <system.web>
      <globalization requestEncoding="GB2312" responseEncoding="GB2312"/>
        <compilation debug="true" targetFramework="4.0" />
    </system.web>

</configuration>

写在web.config里面也是为了网站搭建起来之后,对服务器数据库的改变比较方便一点,只需要改动web.config就可以,在这里呢我也将页面大小也写在了web.config里面,也是问了满足客户的需求。

对表的操作我写了一个接口IDataBaseClass.cs

using System;
using System.Data;

namespace BusinessRules
{
    /// <summary>
    /// IDataBaseClass 的摘要说明。
    /// </summary>
    public interface IDataBaseClass
    {
        DataTable Query();
        DataTable Query(string condition);
        void QueryWithKey(string keyValue);
        int Insert();
        string IsDelete(string keyValue);
        bool Delete(string keyValue);
        int DeleteWithCondition(string condition);
        int Update(string condition);
        int UpdateWithKey(string keyValue);
        string format(string myString);
        bool IsExist(string condition);
        string GetSqlString(string condition);

    }
}

在这个接口里面我写了对数据的操作的各种方法,添加删除,更新等!

在ClassTable.cs这个类里面实现了接口里面的方法!

using System;
using System.Text;
using System.Data;

namespace BusinessRules
{
    /// <summary>
    /// ClassTable 的摘要说明,接口用来强制规范!
    /// </summary>
    public class ClassTable:IDataBaseClass
    {
        public ClassTable()
        {
        }
        string mClassID ; //班级ID
        string mClassName; //班级名称
        string mRemark; //注释

        #region 属性定义
        /// <summary>
        /// ClassID 班级ID
        /// </summary>
        public string ClassID
        {
            get
            {
                return mClassID;
            }
            set
            {
                mClassID=value;
            }
        }

        /// <summary>
        /// ClassName 班级名称
        /// </summary>
        public string ClassName
        {
            get
            {
                return mClassName;
            }
            set
            {
                mClassName=value;
            }
        }

        /// <summary>
        /// Remark 注释
        /// </summary>
        public string Remark
        {
            get
            {
                return mRemark;
            }
            set
            {
                mRemark=value;
            }
        }
        #endregion

        #region 接口要求的方法
        #region 无条件查询 Query()
        /// <summary>
        /// 无条件查询
        /// </summary>
        public DataTable Query()
        {
            DataSet ds=null;
            try
            {
                DB db=new DB();
                ds=db.GetSqlDataSet(this.GetSqlString(""));
            }
            catch(Exception e)
            {
                throw(e);
            }
            return ds.Tables[0];
        }
        #endregion

        #region 有条件查询 Query(string condition)
        /// <summary>
        /// 有条件查询
        /// </summary>
        public DataTable Query(string condition)
        {

            try
            {
                DB db=new DB();
                DataSet ds=db.GetSqlDataSet(this.GetSqlString(condition));
                return ds.Tables[0];
            }
            catch(Exception e)
            {
                throw(e);
            }
        }
        #endregion

        #region 根据主键查询 QueryWithKey(string keyValue)
        /// <summary>
        /// 根据主键查询
        /// </summary>
        public void QueryWithKey(string keyValue)
        {

            try
            {
                string cond="ClassID='"+ format(keyValue) + "'";
                DB db=new DB();
                DataSet ds=db.GetSqlDataSet(this.GetSqlString(cond));
                if(ds.Tables[0]!=null && ds.Tables[0].Rows.Count>0)
                {
                    mClassID=ds.Tables[0].Rows[0]["ClassID"].ToString();
                    mClassName=ds.Tables[0].Rows[0]["ClassName"].ToString();
                    mRemark=ds.Tables[0].Rows[0]["Remark"].ToString();
                }

            }
            catch(Exception e)
            {
                throw(e);
            }

        }
        #endregion      

        #region 添加一条记录 Insert()
        /// <summary>
        ///添加一条记录
        /// </summary>
        public int Insert()
        {

            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append("INSERT ClassTable");
                sql.Append("(ClassID,ClassName,Remark) ");
                sql.Append(" VALUES(");
                sql.Append("'"+ format(mClassID) +"'");
                sql.Append(",'"+ format(mClassName) +"'");
                sql.Append(",'"+ format(mRemark) +"'");
                sql.Append(")");        
                DB db=new DB();
                return db.ExecuteSql(sql.ToString());

            }
            catch(Exception e)
            {
                throw(e);
            }

        }

        #endregion

        #region 能否删除 string IsDelete(string keyValue)
        /// <summary>
        /// 能否删除,返回为null时,表示可以删除
        /// 返回不为空,表示为不能删除的原因
        /// </summary>
        public string IsDelete(string keyValue)
        {
            try
            {
                string temp=null;
                string cond=" ClassID='" + keyValue +"'";
                StudentInfo myStudentInfo = new StudentInfo();
                if (myStudentInfo.IsExist(cond))
                {
                    temp="在学生表中存在ClassID=" + keyValue +"的值";
                }           
                return temp;
            }
            catch(Exception e)
            {
                throw(e);
            }   

        }
        #endregion

        #region 删除一条记录 boll Delete(string keyValue)
        /// <summary>
        /// 要求在调用IsDelete()后使用
        /// 返回为true时,表示删除成功
        /// 返回为false时,表示删除失败
        /// </summary>
        public bool Delete(string keyValue)
        {


            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append(" DELETE FROM ClassTable ");
                sql.Append(" WHERE ClassID='" + keyValue + "'");                    
                DB db=new DB();
                db.ExecuteSql(sql.ToString());
                return true;
            }
            catch(Exception e)
            {
                throw(e);
            }

        }
        #endregion

        #region 有条件删除 int DeleteWithCondition(string condition)
        /// <summary>
        /// 返回值为删除的记录数
        /// 能否删除,完全依靠程序员的判断,
        /// 一般用于和其他表没有约束关系的表
        /// 说明:出现删除异常时并不表示一个都没有删除
        /// </summary>
        public int DeleteWithCondition(string condition)
        {

            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append("DELETE  FROM ClassTable  ");
                sql.Append("ClassName='"+ format(mClassName) + "'" );
                sql.Append(",Remark='"+ format(mRemark) + "'" );
                sql.Append(" WHERE " + condition);
                DB db=new DB();
                return db.ExecuteSql(sql.ToString());

            }
            catch(Exception e)
            {
                throw(e);
            }
        }
        #endregion

        #region 更新 Update(string condition)
        /// <summary>
        /// 更新
        /// </summary>
        public int Update(string condition)
        {
            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append("UPDATE ClassTable SET ");
                sql.Append("ClassName='"+ format(mClassName) + "'" );
                sql.Append(",Remark='"+ format(mRemark) + "'" );
                sql.Append(" WHERE " + condition);
                DB db=new DB();
                return db.ExecuteSql(sql.ToString());
            }
            catch(Exception e)
            {
                throw(e);
            }
        }

        #endregion

        #region 通过主键更新 UpdateWithKey(string keyValue)
        /// <summary>
        /// 通过主键更新
        /// </summary>
        public int UpdateWithKey(string keyValue)
        {

            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append("UPDATE ClassTable SET ");
                sql.Append("ClassName ='"+ format(mClassName) + "'" );
                sql.Append(",Remark='"+ format(mRemark) + "'" );
                sql.Append(" WHERE ClassID='" + keyValue + "'");
                DB db=new DB();
                return db.ExecuteSql(sql.ToString());

            }
            catch(Exception e)
            {
                throw(e);
            }
        }

        #endregion              

        #region 单引号的处理 format(string myString)
        /// <summary>
        /// 单引号的处理
        /// </summary>
        public string format(string myString)
        {
            return myString.Replace("'","''");
        }
        #endregion

        #region 是否存在 IsExist(string myString)
        /// <summary>
        /// 是否存在
        ///返回值为true表示存在
        ///返回值为false表示不存在
        /// </summary>
        public bool IsExist(string condition)
        {
           try
            {

                StringBuilder sql=new StringBuilder();
                sql.Append(" SELECT ClassID FROM ClassTable ");
                sql.Append(" WHERE " + condition);//表示追加的含义,,select classid from calsstable where classid

                DB db=new DB();
                DataSet ds = new DataSet();
                ds=db.GetSqlDataSet(sql.ToString());

               if(ds.Tables[0]!=null && ds.Tables[0].Rows.Count>0)
               {
                   return true;
               }
               else
               {
                   return false;
               }
            }
            catch(Exception e)
            {
                throw(e);
            }

        }
        #endregion

        #region 获取查询Sql GetSqlString(string condition)
        /// <summary>
        /// 获取查询Sql
        /// </summary>
        public string GetSqlString(string condition)
        {                       
            try
            {
                StringBuilder sql=new StringBuilder();
                sql.Append("SELECT ");
                sql.Append(" ClassID,ClassName,Remark ");
                sql.Append(" FROM ClassTable");
                if(condition!="" && condition!=null)
                {
                    sql.Append(" WHERE " + condition);
                }       
                return sql.ToString();

            }
            catch(Exception e)
            {
                throw(e);
            }

        }
        #endregion

        #endregion

        #region 自定义方法

        #endregion

    }
}

关于数据库方面的我就不做过多的说明了,我们主要讲解这个asp.net方面的知识!

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值