C#编写的asp.net问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 00:07:49
vs2005使用C#编写asp.net的网页时遇到问题。主要是编写了一个检查权限的代码,是管理员和用户转到不同的界面。编译没有问题,但是实现不了所要求的功能。请高手帮忙。源代码如下:
public partial class Web_admin_Login : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
//登录按钮事件
protected void imgBtnLogin_Click(object sender, ImageClickEventArgs e)
{
Users user = new Users();//创建Users对象user
if (user.CheckPassword(txtUserID.Text.Trim()))//根据用户编号查询用户密码
{
if (user.UserPwd == txtPwd.Text.Trim())//输入密码与用户密码相同
{
if (user.UserPower == 1)
{
Session["userID"] = txtUserID.Text.Trim();//存储用户编号
Response.Redirect("adminMain.aspx");//转向总管理员操作界面
}
else
{
Response.Redirect("Login.aspx");
}

设置断点看看user.UserPower 的值是多少
问题可能出在你的Users类

说了看下user.UserPower 是不是被赋值了,说不定还是个null的
逻辑并没有什么问题

在user.UserPower 语句旁边点一下,出来一个红点,然后按F5运行,到断点处会停下来,然后按F11单步执行,运行到哪一样把鼠标描到变量上可以看当前变量的值,如果为空的话你的Users类就有问题了,要检查一下是不是没写对,很有可能是数据库语句返回结果不对,你可以用调试检查每个变量,看是不是得到预期值

在你的sql语句怎么写的,如果是sql server的话,在SQL语句那里设置断点把数据库语句取出来,放到sql查询分析器里执行看看
如果没有问题,把你的sql操作语句贴出来看看

看你的代码不都是一个页面吗

可能数据库有多条同样的记录 造成的