C# 从SQL Server表返回特定值
我试图使用一个函数来检查电子邮件是否存在,我想返回用户名和电子邮件。我如何才能做到这一点,我应该如何处理我现有的代码?如何将用户名和电子邮件传递到aspx页面C# 从SQL Server表返回特定值,c#,sql,asp.net,sql-server,C#,Sql,Asp.net,Sql Server,我试图使用一个函数来检查电子邮件是否存在,我想返回用户名和电子邮件。我如何才能做到这一点,我应该如何处理我现有的代码?如何将用户名和电子邮件传递到aspx页面 public static string searchEmail(string email) { connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString; SqlConnection c
public static string searchEmail(string email)
{
connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
{
conn.Open();
bool exists = false;
using (SqlCommand comm = new SqlCommand("select count(*) from Member where email = @email", conn))
{
comm.Parameters.AddWithValue("@email", email);
exists = (int)comm.ExecuteScalar() > 0;
}
if (exists)
{
return "Password has been reset, please check your email box!";
}
return null;
}
}
你可以用这样的东西
public static Tuple<string,string> searchEmail(string email)
{
string userName = "";
connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
{
conn.Open();
using (SqlCommand comm = new SqlCommand("select UserName from Member where email = @email", conn))
{
SqlDataReader reader;
comm.Parameters.AddWithValue("@email", email);
reader = comm.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
userName = reader.GetString(0);
}
}
}
}
conn.Close();
return new Tuple<string,string>(email,userName);
}
公共静态元组搜索电子邮件(字符串电子邮件)
{
字符串userName=“”;
connectionString=ConfigurationManager.connectionString[“myConnectionString”]。connectionString;
SqlConnection conn=新的SqlConnection(connectionString);
{
conn.Open();
使用(SqlCommand comm=newsqlcommand(“从成员中选择用户名,其中email=@email”,conn))
{
SqlDataReader;
comm.Parameters.AddWithValue(“@email”,email);
reader=comm.ExecuteReader();
if(reader.HasRows)
{
while(reader.Read())
{
用户名=reader.GetString(0);
}
}
}
}
康涅狄格州关闭();
返回新元组(电子邮件、用户名);
}
为什么不查询您想要的所有数据而不是计数
,只需使用ExecuteReader
和Read()
检查一行就可以了?存储过程太棒了。我同意@Adam的说法。这在存储过程中会更好。你也应该看看这篇文章。所以你们想要创建一个存储过程来返回用户名@佐姆巴:是的,事实上,我只是建议。我不喜欢在应用程序中进行查询,即使是在数据层。如何在aspx页面上捕获传递的值?我不理解您的问题。。。你的意思是什么?我如何在aspx页面上显示用户名?使用MVC的aspx页面?