马上要答辩了,今天检查程序,一个JAVA的老师来检查我的程序,问了很多挺基础的问题,可我的ASP.NET是最近才学的一点点,也不是很熟悉,勉强能直接用里面的几个控件。所以好多问题,我都没答上来。
    下面只是一个登陆界面的后台,就是判断TEXT文本框内的用户名密码是否跟数据库匹配,如果匹配存到Session里并跳到登陆界面,如果不一样就弹出一个对话框。
    我要问的就是有没有哪位能人有空,帮我解释一下每一句的具体意思:比如今天老师就问我(object sender, System.EventArgs e)这里面是什么意思。我只知道是事件源,后面的是一个事件参数,可都是干嘛的 我也不知道……自动就生成的……;第一行的namespace My_GROUP.Blog 这是什么东西,干什么用的,怎么创建的……等等这些我看书的时候也只是看功能,没有从基础语言开始学。
    #region Web Form Designer generated code
    #endregion
    这里面又是什么呀,好多光盘下来的教程都有这个。诶 麻烦各位高手了,不知道是不是要每行每词都注释……总之辛苦大家了,能帮忙注点是点吧……using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace My_GROUP.Blog
{
/// <summary>
    /// My_login 的摘要说明。
/// </summary>
    public partial class My_login : System.Web.UI.Page
{        OleDbConnection My_myConn;

protected void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
            string My_dns = ConfigurationSettings.AppSettings["conn"];
            My_myConn = new OleDbConnection(My_dns);
} #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{     }
#endregion protected void Button1_Click(object sender, System.EventArgs e)
{
            OleDbCommand My_myCmd = new OleDbCommand("select * from My_admin where My_admin_user='" + adminname.Text.Trim() + "' and My_admin_psw='" + adminpsw.Text.Trim() + "'", My_myConn);
            My_myConn.Open();
            OleDbDataReader My_read = My_myCmd.ExecuteReader();
            if (My_read.Read())
{
                Session["UserName"] = My_read[0].ToString();
                Response.Redirect("My_admin.aspx");
}
else
{
Response.Write("<script>alert('用户名或密码不正确,请从新输入')</script>");
}

}
}
}

解决方案 »

  1.   

    我只能说你悲剧了......
    遇到了一个XXOO的老师......
    问的都是孔乙己的问题......问的这些问题都不是体现编程能力的问题,
    而是背书的能力......
      

  2.   

    (object sender, System.EventArgs e)
    Sender参数传递了指向引发事件的那个类的实例的一个引用,而e是EventArgs类型的参数,它包含了事件所携带的信息。namespace My_GROUP.Blog
    命名空间 #region Web Form Designer generated code
      #endregionVS的一个小功能
    可以折叠代码 让代码更清楚
      

  3.   

    你们老师就是一2B,我都编码两年了,还真没去注意 page_Load里的参数呢,namespace就和Java的包差不多,
      #region Web Form Designer generated code
      #endregion
     这个就是用来折叠的
      

  4.   

    =。=  楼上的哥们 你说的太直接了。
    谢谢大家的回答……
     #region  #endregion
    这个我知道是折叠里面的内容,我问的是里面的内容是什么意思怪我没说清楚……
    我是不是应该挨个baidu一下这些东西的定义?
      

  5.   

    对一个还没毕业的学生来说,这些绝对不是“孔乙己的问题”...如果你平时不学不看书,那就得恶补了...假如看书看MSDN都无法理解这些极其基础的问题,恐怕你得考虑改行了...
      

  6.   

    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Data.OleDb;
    using System.Configuration;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;//以上都是引入要用的包。包括数据库连接,dataset,配置文件,界面层,等等,需要用的包。namespace My_GROUP.Blog//命名空间
    {
        /// <summary>
        /// My_login 的摘要说明。
        /// </summary>
        public partial class My_login : System.Web.UI.Page //登录界面继承UI界面层的PAGE类
        {        OleDbConnection My_myConn;                      //定义oracle数据库连接对象
        
            protected void Page_Load(object sender, System.EventArgs e) //页面加载
            {
                // 在此处放置用户代码以初始化页面
                string My_dns = ConfigurationSettings.AppSettings["conn"];//配置文件的连接
                My_myConn = new OleDbConnection(My_dns); // 将连接数据库的语句给上面定义的对象
            }        #region Web Form Designer generated code
            override protected void OnInit(EventArgs e) 
            {
                //
                // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
                //
                InitializeComponent();
                base.OnInit(e);  
            }
            
            /// <summary>
            /// 设计器支持所需的方法 - 不要使用代码编辑器修改
            /// 此方法的内容。
            /// </summary>
            private void InitializeComponent()
            {            }
            #endregion        protected void Button1_Click(object sender, System.EventArgs e)
            {
                OleDbCommand My_myCmd = new OleDbCommand("select * from My_admin where My_admin_user='" + adminname.Text.Trim() + "' and My_admin_psw='" + adminpsw.Text.Trim() + "'", My_myConn);         //comm命令,数据库的查询,增加,删除什么的都写在comm命令里面
                My_myConn.Open();//打开数据库连接
                OleDbDataReader My_read = My_myCmd.ExecuteReader();//读取数据库中的记录,看是否有记录,ExecuteReader是读取一行
                if (My_read.Read()) //如果有
                {
                    Session["UserName"] = My_read[0].ToString();//保存用户名,以便后面的界面使用
                    Response.Redirect("My_admin.aspx");         //输出My_admin.aspx界面
                }
                else
                {
                    Response.Write("<script>alert('用户名或密码不正确,请从新输入')</script>");
                }
            
            }
        }
    }
      

  7.   

    第一个问题还真不好回答
    我都是简单的理解
    (object sender, System.EventArgs e)
    sender就是引发事件的对象实例的引用
    比如button的onclick,那么这个sender 就是button本身
    EventArgs e,就是事件参数,包含一些事件信息,应该是很多事件传递的事件参数类型不一样,应该是从这个EventArgs继承来的。
    另外希望你从2.0直接学起,VS2005和2002差别还是挺大的