C# 在ASP.NET中创建用于用户登录的web表单
我试图解决这个问题:我想将身份验证页面(登录)与数据库相关联。我不知道如何使用连接字符串 实际上,在ASP中创建的按钮后面的C#代码中,我编写了以下代码:C# 在ASP.NET中创建用于用户登录的web表单,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我试图解决这个问题:我想将身份验证页面(登录)与数据库相关联。我不知道如何使用连接字符串 实际上,在ASP中创建的按钮后面的C#代码中,我编写了以下代码: 使用(SqlConnection-connection=newsqlconnection(“server=(LocalDB);database=DBProva;”) { connection.Open(); } 有人建议我也在Web.config中配置连接,但它在connection.Open()行上给了我一个错误 这是我的旧教育准则,
使用(SqlConnection-connection=newsqlconnection(“server=(LocalDB);database=DBProva;”)
{
connection.Open();
}
有人建议我也在Web.config中配置连接,但它在connection.Open()行上给了我一个错误 这是我的旧教育准则,你也许应该试试
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Configuration;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Uye_UyeLogin : System.Web.UI.Page
{
SqlConnection baglanti = new
SqlConnection(WebConfigurationManager.ConnectionStrings["LocalDbYemekSiparis"].ConnectionString);
protected void Page_Load(object sender, EventArgs e)
{
}
protected void FormView1_ItemInserted(object sender, FormViewInsertedEventArgs e)
{
Label1.Text = "Kaydınız başarıyla gerçekleşmiştir.";
}
protected void Button1_Click(object sender, EventArgs e)
{
// Üye Girişi
string sql = "SELECT * FROM Tbl_Musteriler where TcKimlik=@tc and MusteriSifre=HASHBYTES('MD5',@Sif)";
SqlCommand komut = new SqlCommand();
komut.CommandText = sql;
komut.Connection = baglanti;
komut.Parameters.AddWithValue("@Tc", TextBox1.Text);
komut.Parameters.AddWithValue("@Sif", TextBox2.Text);
baglanti.Open();
SqlDataReader satir = komut.ExecuteReader();
if (satir.Read())
{
Session["KullaniciTipi"] = "Musteri";
Session["KullaniciId"] = (int)satir["MusteriId"];
Session["OturumTc"] = satir["TcKimlik"].ToString();
Session.Timeout = 120; // Oturum süresi dk
Response.Redirect("/Uye/UyeDefault.aspx");
}
else
{
Label2.Text = "Hatalı Giriş.";
}
}
}尝试在global.asax中声明Myconn字符串,如下所示
public static string MyConn= ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
当你在代码中需要它时,只需调用
SqlConnection con = new SqlConnection(Global.MyConn);
最重要的是不要忘记在Web.Config中声明一个与数据库对应的连接字符串
例:
FYI,MD5哈希已被弃用(一段时间了),因此不应使用,您应该真正使用参数。添加,而不是参数。添加WithValue
。好。顺便说一句,sha2-512是安全的吗?sha2-512更安全;是的。到目前为止,您尝试了哪些方法来使用连接字符串?有什么不起作用的?关于如何将C#应用程序连接到SQL Server实例,有很多例子;那些你不懂的文章、文档、教程呢?实际上,在ASP中创建的按钮后面的C代码中,我编写了以下代码:使用(SqlConnection connection=newsqlconnection(“server=(LocalDB);database=DBProva;”){connection.Open();}有人建议我也在Web.config中配置连接,但它在connection.Open()行上给了我一个错误;你的问题,不要在评论中尝试。非常感谢你,我按照你给我的指示做了,效果很好
<connectionStrings>
<add name="myConnectionString" connectionString="Data Source=(local);Initial Catalog=DBNAME;Integrated Security=True" />
</connectionStrings>