`
阅读更多
大家好,首先欢迎您访问我的博客,在这儿,您如果是一名Asp.net的入门新手,请阅读我的asp.net入门系列,本套教程主要是针对有一些asp.net基础的同学设置的,这儿呢,不会讲每个控件是干什么的,如果你想知道每个控件是干什么的,你可以到www.thc123.com看看田洪川老师录的视频教程;如果你发现我在入门系列中,有什么疑惑或者错误的地方,欢迎留言指出。

这是我第一次写详细的教程,为什么我要写这个教程?我知道,自学的路很痛苦,为了让以后的新同学能减少这样的痛苦,少走弯路,遂决定自己也写一写教程,一来是对自己的知识的一个总结,二来也是练练自己的写作,呵呵,开个玩笑:)

Asp.net入门-网络采购系统(1)

在这一部分的教程中,讲从sqlserver2000开始建一个LoginTable开始讲起,本节教程将包括:
1.数据表的创建
2.登录界面的制作
3.如何登录
4.如何区别用户
5.登录了该干什么
这样的5个问题。

1.数据表的创建:
大家都知道,我们所有的登录信息都是存放在数据库中的,所以,要想成功的登录到系统,首先得有一个数据库,或数据表来记录我们的登录信息,我喜欢把这个名字取为LoginTable,这完全可以按照同学自己的兴趣爱好取,你可以叫他AAA,BBB,呵呵。
首先需要一个ID,用于以后从数据库获取并修改用户使用,UserName用户名,Password密码,LeiBie用户类别,建表相关SQL语句如下:
CREATE TABLE [LoginTable] (
    
[ID] [int] IDENTITY (11NOT NULL ,
    
[UserName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
    
[Password] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
    
[LeiBie] [int] NULL ,
    
CONSTRAINT [PK_LoginTable] PRIMARY KEY  CLUSTERED 
    (
        
[ID]
    )  
ON [PRIMARY] 
ON [PRIMARY]
GO


直接把上面的代码复制到“查询分析器”中,运行一下就好了,当然,前面要加上一句use[目标数据库名]。

2.登录界面的创建:
在这儿,我直接复制粘贴过来我在Dreamweaver里面做好了的一个登录界面过来,有点丑,但是还比较实用,呵呵!
页面代码:
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>公司采购系统</title>
    
<link href="Css.css" type="text/css" rel="stylesheet">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css">
<!--
body 
{
    background-color
: #333366;
}
-->
</style></head>
<body>
    
<form id="form1" runat="server">
    
<div>
    
      
<p>&nbsp;</p>
      
<p>&nbsp;</p>
      
<p>&nbsp;</p>
      
<p>&nbsp;</p>
      
<table width="600" border="0" align="center" cellpadding="0" cellspacing="0" background="Image/bg.gif">
        
<tr>
          
<td colspan="2"><img src="Image/logo.gif" width="600" height="150" /></td>
        
</tr>
          
<tr>
              
<td style="width: 304px">
              
</td>
              
<td width="299">
              
</td>
          
</tr>
        
<tr>
          
<td style="width: 304px"><div align="right" style="text-align: right"><img src="Image/UserNamePic.gif" width="127" height="29" /></div></td>
          
<td width="299">&nbsp;<asp:TextBox ID="UserName" runat="server"></asp:TextBox><span style="color: #ff0000">*</span></td>
        
</tr>
        
<tr>
          
<td style="width: 304px; height: 29px"><div align="right"><img src="Image/PasswordPic.gif" width="127" height="29" /></div></td>
          
<td style="height: 29px">&nbsp;<asp:TextBox ID="Password" runat="server" TextMode="Password" Width="148px"></asp:TextBox><span
                  
style="color: #ff0000">*</span></td>
        
</tr>
          
<tr>
              
<td style="width: 304px; height: 16px">
              
</td>
              
<td style="height: 16px">
              
</td>
          
</tr>
        
<tr>
          
<td style="width: 304px; text-align: right">&nbsp;<asp:Button ID="UserLoginBtn" runat="server" CssClass="ButtonCss" Text="用户登录"
                  Width
="120px" OnClick="UserLoginBtn_Click" /></td>
          
<td>&nbsp;<asp:Button ID="AdminLoginBtn" runat="server" CssClass="ButtonCss" Text="管理登录"
                  Width
="120px" OnClick="AdminLoginBtn_Click" /></td>
        
</tr>
        
<tr>
          
<td colspan="2" style="height: 15px; text-align: center">
              
<span style="color: #ff0033">&nbsp;无用户名与密码请联系管理员注册</span></td>
        
</tr>
      
</table>
      
</div>
    
</form>
</body>
</html>
这样,一个页面就制作完成了,当然,光有页面是不可以的,那样的话只是一个空架子了,没有实际的意义,在这里,我先不忙贴出CS代码来,先请同学往下看,在如何登录里面,我会讲讲该页面的CS代码的编写。

3.如何登录
虽然这个步骤不复杂,但是比较烦琐,希望同学们耐心的往下做。
1)请同学在根目录下建立一个App_Code文件夹,里面建一个DengLu.cs类,用于写一些get,set方法,具体代码如下:
using System;
using System.Data;
using System.Configuration;
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.Data.SqlClient;
using SqlHelper;

/// <summary>
/// DengLu 的摘要说明
/// </summary>
public class DengLu
{
    
public DengLu()
    {
        
//
        
// TODO: 在此处添加构造函数逻辑
        
//
    }
    
private int iD = 0;

    
private string userName = string.Empty;

    
private string password = string.Empty;

    
private string leiBie = string.Empty;

    
private int userClass = 0;

    
public int ID
    {
        
get { return this.ID; }
        
set { this.ID = value; }
    }

    
public string UserName
    {
        
get { return this.userName; }
        
set { this.userName = value; }
    }

    
public string Password
    {
        
get { return this.password; }
        
set { this.password = value; }
    }

    
public string LeiBie
    {
        
get { return this.leiBie; }
        
set { this.leiBie = value; }
    }

    
public int UserClass
    {
        
get { return this.userClass; }
        
set { this.userClass = value; }
    }
}
然后在在App_Code目录下建立一个实体(Entity)文件夹,并在这里新建一个文件,名字叫DengLuDAO.cs的一个类,这个类主要目的是用于数据的提交,具体代码为:
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.Data.SqlClient;
using SqlHelper;

/// <summary>
/// DengLuDao 的摘要说明
/// </summary>
public class DengLuDao
{
    
public DengLuDao()
    {
        
//
        
// TODO: 在此处添加构造函数逻辑
        
//
    }
    
private static string UserName = "@UserName";

    
private static string Password = "@Password";

    
private static string userClass = "@LeiBie";

    
private static string SELECT_LoginTable = "Select * from LoginTable where UserName=@UserName and Password=@Password ";

    
public static DengLu DengLuTable(DengLu TiJiao2)
    {
        DengLu userInfo 
= null ;
        SqlParameter[] parms 
= new SqlParameter[]{
            
new SqlParameter(UserName,SqlDbType.NVarChar,50),
            
new SqlParameter(Password,SqlDbType.NVarChar,50)};
        
         
         parms[
0].Value = TiJiao2.UserName;
         parms[
1].Value = TiJiao2.Password;

        
//获取连接字符串,插入数据到SQL数据库
        SqlDataReader read = SqlHelper.SqlHelpDao.ExecuteReader(GetConnectionString.ConnectionString, CommandType.Text, SELECT_LoginTable, parms);
        
while (read.Read())
        {
            userInfo 
= new DengLu();
            userInfo.UserName 
= read["UserName"].ToString();
            userInfo.Password 
= read["Password"].ToString();
            userInfo.UserClass 
= int.Parse(read["LeiBie"].ToString());
        }
        
return userInfo;

        }
    }

是不是到这儿就完了呢?
不是的,需要在有个GetConnectionString这个类,用于和SQL数据库的连接,就是说,你要告诉他,怎么怎么找到数据库,GetConnectionString这个类放到App_Code目录下就好了:
using System;
using System.Data;
using System.Configuration;
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.Data.SqlClient;
using SqlHelper;

/// <summary>
/// GetConnectionString 的摘要说明
/// </summary>
public class GetConnectionString
{
    
public GetConnectionString()
    {
        
//
        
// TODO: 在此处添加构造函数逻辑
        
//
    }
    
public static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["WebCaiGouDBConnectionString"].ConnectionString;
}

当然,还需要修改web.config里面的相关<ConnectionString></ConnectionString>部分的代码。
下一步我们该做什么呢?

下一步我们该对刚才制作的登录界面里的Button写Click事件了,先把代码贴出来,在解释一下:

protected void UserLoginBtn_Click(object sender, EventArgs e)
    {
        DengLu user 
= new DengLu();
        user.UserName 
= UserName.Text.Trim();
        user.Password 
= Password.Text.Trim();
        DengLu userInfo 
= DengLuDao.DengLuTable(user);
        
if (userInfo != null)
        {
            Session.Add(
"LeiBie", userInfo.UserClass);
            
if (userInfo.UserClass == 1)
            {
                Response.Write(
"<script>alert('用户登录成功');window.open(\"./UserManage.aspx\");</script>");
            }

            
if (userInfo.UserClass == 2)
            {
                Response.Write(
"<script>alert('管理登录成功');window.open(\"./AdminManage.aspx\");</script>");
            }
        }
        
else
        {
            Response.Write(
"<script>alert('登录失败!')</script>");
        }
    }
在这里可以看到,这个是一个UserLoginBtn的click事件,首先我们得实例化一下,然后获取两个TextBox的值,并调用DengLuDao.DengLuTable(user)这样的一个方法,来插入到数据库里面进行验证,我采用了一个UserClass来作为用户类别的区分,你可以设置1为管理员,2为用户之类的,这些也都是你自己随便设置的,登录以后页面的跳转就是后面的那句window.open了,呵呵,这是最简单的一种登录方式的设计,新同学可以按照这样做一下试试,希望看我教程的同学多动手多动手试试,复制粘贴是学不到东西的。

在下面的一节教程中,我将会对UserManage管理平台该干什么,如何读取数据库里的数据,如何添加数据,如何修改数据,添加用户,删除用户之类的问题小小的讲一下,希望新同学能学到有用的东西。

如果您对我的教程有什么不清楚的地方,可以在回复中告诉我,我会及时来给您解答的。
分享到:
评论

相关推荐

    ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典

    ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP.NET入门经典ASP...

    人才网站设计-asp.net+sql-(系统源码)

    人才网站设计-asp.net+sql-(系统源码)人才网站设计-asp.net+sql-(系统源码)人才网站设计-asp.net+sql-(系统源码)人才网站设计-asp.net+sql-(系统源码)人才网站设计-asp.net+sql-(系统源码)人才网站设计-...

    asp.net入门-界面

    作为初学者入门,理解ASP.NET的核心概念和界面设计是非常关键的。 首先,我们要了解ASP.NET的基本结构。ASP.NET页面由一系列服务器控件组成,这些控件在服务器端处理事件并生成HTML发送到客户端浏览器。例如,按钮...

    asp.net--班级学生信息管理系统

    《ASP.NET——班级学生信息管理系统详解》 ASP.NET是一个由微软公司推出的强大的Web应用程序开发框架,它为开发者提供了丰富的工具和库,使得构建高效、安全的Web应用变得更加便捷。在这个项目中,我们聚焦于“班级...

    ASP.NET MVC 5入门指南(中文PDF+源码)

    ASP.NET MVC 5入门指南 (中文PDF+源碼) 1. ASP.NET MVC 5 - 开始MVC 5之旅 2. ASP.NET MVC 5 - 控制器 3. ASP.NET MVC 5 - 视图 4. ASP.NET MVC 5 - 将数据从控制器传递给视图 5. ASP.NET MVC 5 - 添加一个模型 6. ...

    十天学会ASP.net--我认为ASP.NET比ASP难很多,希望大家做好准备

    【环境配置】学习ASP.NET需要安装MDAC和.NET Framework SDK,并在Windows 2000操作系统上配置IIS。创建一个简单的ASP.NET页面(.ASPX),使用记事本编辑并输入C#或VB.NET代码,通过本地访问查看运行结果。ASP.NET...

    ASP.NET第一步:基于C#和ASP.NET 2.0---配套源码大全

    在这个配套源码大全中,"helloworld"可能是入门示例,展示了一个简单的ASP.NET页面的创建。这个例子可能包含了C#代码,用于响应HTTP请求并输出“Hello, World!”。通过分析这个例子,新手可以理解ASP.NET和C#的基本...

    asp.net-mvc-core.6.0-layui-sqlsugar-后台模板-v1.2

    asp.net_mvc_core.6.0_layui_sqlsugar_后台模板_v1.2相关介绍《.NET Core6.0 MVC+layui+SqlSugar 简单增删改查》: https://blog.csdn.net/djk8888/article/details/134777133

    ASP.NET 完全入门

    ASP.NET技术就是由微软的.NET技术细化而来的,它跟ASP技术有些关系,然而又不是仅仅是一个继承,可以讲,ASP.NET跟ASP想比较的话,已经是变得面目全非了,当然好得至少是一个量级以上。 ASP.NET完全基于模块与组件,...

    asp.net控件--下拉框多选

    ASP.NET控件是Web开发中的重要元素,它们用于构建用户界面并增强用户交互。在ASP.NET中,下拉框(DropDownList)是最常见的选择控件之一,通常用于提供一组预定义的选项供用户单选。然而,对于需要用户可以选择多个...

    ASP.NET课程-学生信息管理系统实验报告.doc

    1. **ASP.NET基础**:ASP.NET是Microsoft开发的一个用于构建Web应用程序的框架,它允许开发者使用.NET Framework来创建动态网页。在这个实验中,学生会接触到ASP.NET的页面生命周期、控件、事件处理和数据绑定等基础...

    ASP.NET 2.0入门经典:C#编程篇.pdf

    1. **.NET Framework**:.NET Framework是ASP.NET的基础,它提供了一组类库、运行时环境和开发工具,支持多种编程语言,包括C#。.NET Framework使得跨平台开发成为可能,并且简化了代码的编写和管理。 2. **ASP.NET...

    ASP.NET 完全入门书籍

    1. **.NET Framework**: .NET Framework是ASP.NET运行的基础,它包含了类库、公共语言运行时(CLR)以及对Windows操作系统的接口。开发者可以通过.NET Framework使用多种编程语言,如C#或VB.NET,进行开发。 2. **...

    ASP.NET动态网页设计案例教程VB.NET版-江红-素材

    1. **基础概念**:讲解ASP.NET的基本组件,如Web Forms、控件、事件处理程序和生命周期。VB.NET语言基础,包括变量、常量、数据类型、流程控制语句等。 2. **Web Forms**:ASP.NET的核心是Web Forms,它提供了一种...

    ASP.Net入门经典

    **ASP.Net入门经典** ASP.Net是微软公司推出的一种用于构建Web应用程序的技术框架,它基于.NET Framework,为开发者提供了丰富的工具和功能,简化了Web开发流程。本教程将深入浅出地介绍ASP.Net的基础知识,帮助...

    ASP.net完全入门

    ### ASP.NET完全入门知识点概述 #### 第一篇 概论 ##### 第一章 微软.NET战略和ASP.NET简介 - **微软.NET的历史**: .NET框架是微软推出的一个软件开发平台,旨在提供统一的编程环境,支持多种编程语言,并提供...

    ASP.NET综合实验--成绩管理系统

    1. **ASP.NET基本概念** ASP.NET是微软提供的一个开发Web应用程序的框架,它简化了网页和Web应用程序的创建过程。它支持多种语言(如C#,VB.NET),并提供了诸如ASP.NET Web Forms、ASP.NET MVC、ASP.NET Core等...

    ASP.NET 3.5入门经典--涵盖C#和VB.NET(Wrox)

    《ASP.NET 3.5入门经典--涵盖C#和VB.NET》 《Wrox-Beginning ASP.NET 3.5 CSharp and VB》 附带C#和VB源码。 很经典一本书籍,不容错过。 书名: ASP.NET 3.5入门经典——涵盖C#和VB.NET(第5版) 丛书名: 作者: ...

    ASP.net从入门到实践

    【ASP.NET从入门到实践】 ASP.NET是微软公司推出的一种用于构建Web应用程序的框架,它构建于.NET Framework之上,提供了全面的开发环境,用于创建高效、功能丰富的网站和Web应用程序。.NET Framework是一个完整的...

    [中文][ASP.NET入门经典-VB.NET 编程篇][35.86 MB]

    ### ASP.NET 入门经典——VB.NET编程篇 #### 知识点概述: 根据提供的文件信息,本资源主要涉及的是ASP.NET与VB.NET的基础及应用技术。ASP.NET是微软开发的一种用于构建动态网页的应用框架,而VB.NET则是Visual ...

Global site tag (gtag.js) - Google Analytics