技术开发 频道

ASP.NET项目实战:WEB的统计控制系统

  然后实现这个接口:类DBHelper,代码见附件

  其中类的构造函数中指定使用的数据库服务器名及用户名和密码。

  当然,也要提供 SqlHelper.cs类,附下载地址

  接下来就是实现BLL,业务逻辑层的Login,代码如下:

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Web;

namespace BLL
{
    
/// <summary>
    
/// 业务逻辑类 Login
    
/// </summary>
    
public class Login
    {
        
private readonly SqlServerDAL.Login dal = new SqlServerDAL.Login();
        
public Login()
        { }

        
/// <summary>
        
/// 增加一条数据
        
/// </summary>
        
public void Add(Model.Login model)
        {
            dal.Add(model);
        }

        
/// <summary>
        
/// 更新一条数据
        
/// </summary>
        
public void Update(Model.Login model)
        {
            dal.Update(model);
        }

        
/// <summary>
        
/// 删除一条数据
        
/// </summary>
        
public void Delete(int id)
        {
            dal.Delete(id);
        }

        
/// <summary>
        
/// 是否存在该记录
        
/// </summary>
        
public bool Exists(string username)
        {
            return dal.Exists(username);
        }

        
/// <summary>
        
/// 得到一个对象实体
        
/// </summary>
        
public Model.Login GetModel(string username)
        {
            return dal.GetModel(username);
        }

        
/// <summary>
        
/// 获得泛型数据列表
        
/// </summary>
        
public List<Model.Login> GetList(out long count)
        {
            return dal.GetList(out count);
        }


    }
}

 

  下面就该实现website里面的登录模块了。

  这里使用Cookie来存储用户信息,

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;

/// <summary>
/// UserCookies 的摘要说明
/// </summary>
public class UserCookies
{
    
public const string cksUserName = "COOKIES_1_1";

    
public UserCookies()
    {
        
//
        
// TODO: 在此处添加构造函数逻辑
        
//
    }
    
public void SetCookies(string name, string Value)
    {
        System.Web.HttpContext.Current.Response.Cookies.Add(
new System.Web.HttpCookie(name, Value));
    }

    
public void SetCookies(Model.Login user)
    {
        SetCookies(cksUserName, user.username);
    }

    
public string GetCookies(string name)
    {
        
if (System.Web.HttpContext.Current.Request.Cookies[name] == null)
            return
"";
        
if (System.Web.HttpContext.Current.Request.Cookies[name].Value == null || System.Web.HttpContext.Current.Request.Cookies[name].Value == "")
            return
"";
        return System.Web.HttpContext.Current.Request.Cookies[name].Value;
    }

    
public void ClearUserCookies()
    {
        SetCookies(cksUserName,
"");
    }
}

 

  用来设置和清空cookie, 然后通过cookie来判断用户是否为合法用户。

public bool CheckUserLogin()
    {
        UserCookies cookies
= new UserCookies();
        
string username = cookies.GetCookies(UserCookies.cksUserName);
        
if (string.IsNullOrEmpty(username))
        {
            return
false;
        }
        return
true;
    }

 

  今天大致上讲了整个项目的实现技术和项目的需求,以及简单的介绍了如何用三层架构实现登录模块,虽然没有具体的实现,但是思路已经讲了,具体的代码会在后续文章中提供,希望多多支持。有什么不清楚的可以留言或者发邮件告诉我。

0
相关文章