C# 错误:对象引用未设置为对象的实例?
有一个错误,即对象引用未设置为对象的实例,我正在尝试使用下面使用的数据库中的电子邮件id来比较安全问题和答案 代码 但错误就在这里C# 错误:对象引用未设置为对象的实例?,c#,asp.net,C#,Asp.net,有一个错误,即对象引用未设置为对象的实例,我正在尝试使用下面使用的数据库中的电子邮件id来比较安全问题和答案 代码 但错误就在这里 **string sq = (ds.Tables["0"]).ToString(); string Ans = (ds.Tables["1"]).ToString();** 使用此代码,我将电子邮件id作为查询字符串,并将其发送到NewPassword.aspx页面,在该页面中,我可以设置新密码,并使用电子邮件id更新此密码,以更改特定列
**string sq = (ds.Tables["0"]).ToString();
string Ans = (ds.Tables["1"]).ToString();**
使用此代码,我将电子邮件id作为查询字符串,并将其发送到NewPassword.aspx页面,在该页面中,我可以设置新密码,并使用电子邮件id更新此密码,以更改特定列
并且NewPassword.aspx代码有一个按钮,在一个按钮上单击“新建密码”应该会在我的数据库的注册表和登录表中得到更新
NewPassword.aspx code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
public partial class Webpages_NewPassword : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\krishna\Documents\Visual Studio 2010\Projects\MasterDemo\App_Data\Earth_Movers.mdf;Integrated Security=True;User Instance=True");
con.Open();
if (Request.QueryString["email"] != null)
{
string Email= Request.QueryString["email"];
SqlCommand cmd = new SqlCommand("update Registration set Password where email='" + Email + "'", con);
}
con.Close();
}
}
所以请尽快给我提供解决方案
谢谢和问候
Vasundara Reddy这些东西中有一个是空的
你确定你不是这个意思吗
ds.Tables[0]
ds.Tables[1]
将表的索引用作int,因此
string sq = (ds.Tables["0"]).ToString();
这个
由于数据集不包含名为0的表,因此返回null
表的名称是data,因为您使用了重载,该重载采用它应该填充的表的名称
因此,这也是可行的:
string sq = (ds.Tables["data"]).ToString();
但是,我确信您不希望DataTable.ToString,而是希望其行的内容:
DataTable data = ds.Tables["data"];
string firstQuestion = data.Rows[0].Field<string>("Security_Question");
string firstAnswer = data.Rows[0].Field<string>("Answer");
可能重复如何将数据库数据与文本框值进行比较。这就像我有安全问题和答案,应该进行比较,然后移动到NewPassword.aspx,然后用户可以更新他的新密码password@user3384492:我编辑了我的答案,向您展示了如何读取行字段。如果表中包含多个via DataTable.Rows,则可以循环它们。现在没有错误,但没有重定向到NewPassword.aspx
string sq = (ds.Tables[0]).ToString();
string sq = (ds.Tables["data"]).ToString();
DataTable data = ds.Tables["data"];
string firstQuestion = data.Rows[0].Field<string>("Security_Question");
string firstAnswer = data.Rows[0].Field<string>("Answer");