zjqxwgm
2017-02-28 07:08
采纳率: 0%
浏览 6.6k

未将对象引用设置到对象的实例。

未将对象引用设置到对象的实例。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

行 20: string userName = StrHelper.ConvertSql(UserName.Text.ToString());
行 21: string userPwd = StrHelper.EncryptPassword(PassWord.Text.ToString(), StrHelper.PasswordType.MD5);
行 22: if (bs.isLoginValidate(userName, userPwd))
行 23: {
行 24:

源文件: d:\wgm\vs\text\web\Login.aspx.cs 行: 22

堆栈跟踪:

[NullReferenceException: 未将对象引用设置到对象的实例。]
Leyp.SQLServerDAL.UserDAL.isExistsUserName(String UserName) in C:\Users\yuqin\Desktop\Leyipai\SQLServerDAL\UserDAL.cs:181
Leyp.SQLServerDAL.UserDAL.isLoginValidate(String UserName, String PassWord) in C:\Users\yuqin\Desktop\Leyipai\SQLServerDAL\UserDAL.cs:207
Login.LoginButton_Click(Object sender, ImageClickEventArgs e) in d:\wgm\vs\text\web\Login.aspx.cs:22
System.Web.UI.WebControls.ImageButton.OnClick(ImageClickEventArgs e) +115
System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +120
System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563

#**_在这里分享一下我这问题的原因:是因为我的数据库表不全。希望能帮到后来人。_**#

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

13条回答 默认 最新

  • qq_36498920 2017-02-28 07:12

    你对象实例化了么?创建对象了么?

    评论
    解决 无用
    打赏 举报
  • podd 2017-02-28 07:12

    可能是值得问题,断点调试下

    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:15

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %>

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



    系统登陆
        <link rel="stylesheet" type="text/css" href="css/Login.css"/>
    
    <SCRIPT src="js/jquery.js" type=text/javascript></SCRIPT>
    <SCRIPT src="js/jquery-cookieplug.js" type=text/javascript></SCRIPT>
    

    TABLE {<br> FONT-SIZE: 12px; COLOR: #333333; LINE-HEIGHT: 150%; FONT-FAMILY: &quot;宋体&quot;<br> }<br> BODY {<br> MARGIN: 0px<br> }<br>


    用户: 51aspx 
    密码:
     
     
    广州乐易拍有限公司版权所有 2008-2009
    请使用IE6.0 SP1以上浏览器,最佳显示分辨率1024×768
    </form>
    


    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:18

    我是在看别人提供的代码,在仿写练习时碰到这个问题,说实话,我都不知道应该怎么问

    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:19

    aspx页代码:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %>

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



    系统登陆
        <link rel="stylesheet" type="text/css" href="css/Login.css"/>
    
    <SCRIPT src="js/jquery.js" type=text/javascript></SCRIPT>
    <SCRIPT src="js/jquery-cookieplug.js" type=text/javascript></SCRIPT>
    

    TABLE {<br> FONT-SIZE: 12px; COLOR: #333333; LINE-HEIGHT: 150%; FONT-FAMILY: &quot;宋体&quot;<br> }<br> BODY {<br> MARGIN: 0px<br> }<br>


    用户: 51aspx 
    密码:
     
     
    广州乐易拍有限公司版权所有 2008-2009
    请使用IE6.0 SP1以上浏览器,最佳显示分辨率1024×768
    </form>
    


    
    
    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:19

    我都是仿它的,在它的原程序里,可以运行,换我自己这样一页一页抄过来,就不行

    评论
    解决 无用
    打赏 举报
  • jac-song 2017-02-28 07:21

    调试,一行一行的检查,看什么对象为null了。如果对象为null在它的实例上调方法或者访问属性都会引发空指针异常..

    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:22
     <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head id="Head1" runat="server">
        <title>系统登陆</title>
    
            <link rel="stylesheet" type="text/css" href="css/Login.css"/>
    
        <SCRIPT src="js/jquery.js" type=text/javascript></SCRIPT>
        <SCRIPT src="js/jquery-cookieplug.js" type=text/javascript></SCRIPT>
      <STYLE type=text/css>TABLE {
        FONT-SIZE: 12px; COLOR: #333333; LINE-HEIGHT: 150%; FONT-FAMILY: "宋体"
    }
    BODY {
        MARGIN: 0px
    }
    </STYLE>
    </head>
    <body leftMargin=0 background=images/bg.gif topMargin=0>
        <form id="form1" runat="server">
    
    <DIV align=center>
    <!--5-1-A-s-p-X--->
    <TABLE cellSpacing=0 cellPadding=0 width=913 border=0>
      <TBODY>
      <TR>
        <TD width=461 style="height: 465px" valign="top">
          <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
            <TBODY>
            <TR>
              <TD>
                <DIV align=left><IMG height=80 src="images/log_mykd_n.gif" 
                width=212></DIV></TD></TR>
            <TR>
              <TD><IMG height=110 src="images/ren1_n.gif" 
            width=461></TD></TR>
            <TR>
              <TD><IMG height=230 src="images/ren2.jpg" 
            width=461></TD></TR></TBODY></TABLE></TD>
        <TD vAlign=top style="height: 465px">
          <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
            <TBODY>
            <TR>
              <TD vAlign=bottom height=190><IMG height=32 
                src="images/pic_text.gif" width=381></TD></TR></TBODY></TABLE>
          <TABLE  cellSpacing=0 cellPadding=0 width="100%"  border=0>
            <TBODY>
            <TR>
              <TD vAlign=top background=images/con1.gif>
                <TABLE style="MARGIN-TOP: 37px; MARGIN-LEFT: 8px" cellSpacing=0 
                cellPadding=0 width="100%" border=0>
                  <TBODY>
                  <TR>
                    <TD><IMG height=34 src="images/pic_text_login.gif" 
                      width=253></TD></TR>
                  <TR>
                    <TD>
                      <TABLE style="MARGIN-TOP: 10px; width: 379px;" cellSpacing=0 cellPadding=0 border=0>
                        <TBODY>
                        <TR>
                          <TD noWrap style="width: 38px">
                              用户:</TD>
                          <TD style="width: 155px"><LABEL>
                              <asp:TextBox ID="UserName" runat="server"  Width="101px">51aspx</asp:TextBox>&nbsp;<asp:RequiredFieldValidator
                                  ID="RequiredFieldValidator1" runat="server" ControlToValidate="UserName" ErrorMessage='<img src="images/false.gif">'></asp:RequiredFieldValidator></LABEL></TD></TR>
                        <TR style="PADDING-TOP: 5px">
                          <TD style="width: 38px">
                              密码:</TD>
                          <TD style="width: 155px"><LABEL>
                              <asp:TextBox ID="PassWord" runat="server" Text="123" TextMode="Password" Width="101px"></asp:TextBox>
                              <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="PassWord"
                                  ErrorMessage='<img src="images/false.gif">'></asp:RequiredFieldValidator></LABEL></TD></TR>
                        <TR style="PADDING-TOP: 5px">
                          <TD style="width: 38px">&nbsp;</TD>
                          <TD style="width: 155px">
                            <TABLE cellSpacing=0 cellPadding=0 width="100%" 
    border=0>
                              <TBODY>
                              <TR>
                                <TD>
                                  <DIV align=left>
                                      &nbsp;<asp:ImageButton ID="LoginButton" runat="server" ImageUrl="images/but1.gif"
                                          OnClick="LoginButton_Click" /></DIV></TD></TR>
                              <TR>
                                <TD>
                                  <DIV align=left><IMG height=18 
                                  src="images/but1_y.gif" 
                                width=83></DIV></TD></TR>
                              <TR>
                                <TD>
                                  </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
              <TD width=22><IMG height=229 src="images/con2.gif" 
                width=22></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
    <TABLE cellSpacing=0 cellPadding=0 width=913 align=center border=0>
      <TBODY>
      <TR>
        <TD style="PADDING-BOTTOM: 10px" vAlign=bottom height=180>
          </TD></TR></TBODY></TABLE>
    
    
    
    
    </DIV>
    
        </form>
    
    
    
    </body>
    </html>
    
    
    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:22
     using System;
    using System.Web.UI;
    using Leyp.Components;
    using Leyp.Model.View;
    using Leyp.SQLServerDAL;
    using Leyp.Components.Module;
    
    
    public partial class Login : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    
    
        }
        protected void LoginButton_Click(object sender, ImageClickEventArgs e)
        {
    
                UserDAL bs = new UserDAL();
                string userName = StrHelper.ConvertSql(UserName.Text.ToString());
                string userPwd = StrHelper.EncryptPassword(PassWord.Text.ToString(), StrHelper.PasswordType.MD5);
                if(bs.isLoginValidate (userName,userPwd))
                {
    
                   Leyp.Model.User s=bs.getByUserName(userName);
                   SessionUser ss = new SessionUser();
                   ss.UserName = s.UserName;
                   ss.TypeID = s.TypeID;
                   ss.SubClassID = s.SubClassID;
                   ss.GroupID = s.GroupID;
                   Leyp.Components.Module.BaseLogin.SetSession(ss);//保存Session
                   new BasePage().addSystemLog("登录进入系统");
                   Response.Redirect("Index.aspx");
    
                }
               else{  
    
    
                    Jscript.AjaxAlert(this,"登录失败!请检查用户名和密码");
                    return ;
                }
    
        }
    }
    
    
    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-02-28 07:24

    图片说明

    评论
    解决 无用
    打赏 举报
  • podd 2017-02-28 08:31

    看bs是否有isLoginValidate的方法和userName和userPwd的值

    评论
    解决 无用
    打赏 举报
  • Leyp.SQLServerDAL.UserDAL.isExistsUserName(String UserName) in C:\Users\yuqin\Desktop\Leyipai\SQLServerDAL\UserDAL.cs:181

    这个代码贴出来,181行,肯定是使用了null值的变量,如存储null的变量调用ToString之类的方法

    评论
    解决 无用
    打赏 举报
  • zjqxwgm 2017-03-01 03:16

    各位前辈,这个问题我自己已经解决。查找出来的原因让我羞愧,是数据库问题。因为我是在学习C#,所以对原程序进行仿写,同时也仿写他的数据库

    仿写数据库是,只是把我自认为这页面会用到的数据库表仿写过来,结果因为数据库没仿写完全,引用这个问题。

    谢谢各位的帮助!

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题