在asp.net ide中从SQL Server Management Studio检索值
我正在从SQLServerManagementStudio到asp.NET4.0IDE的表中获取所有单元格值。但我不知道为什么,但每个值都会自动附加3个空格。我也不能删减这些值。所以我无法将这些值与文本框中的密码值等值进行比较。我正在使用LINQQuery和LINQtoSQLDBML文件。谁能告诉我发生了什么事?如何解决这个问题??谢谢 以下是代码:在asp.net ide中从SQL Server Management Studio检索值,asp.net,sql-server,database,linq,Asp.net,Sql Server,Database,Linq,我正在从SQLServerManagementStudio到asp.NET4.0IDE的表中获取所有单元格值。但我不知道为什么,但每个值都会自动附加3个空格。我也不能删减这些值。所以我无法将这些值与文本框中的密码值等值进行比较。我正在使用LINQQuery和LINQtoSQLDBML文件。谁能告诉我发生了什么事?如何解决这个问题??谢谢 以下是代码: DataClasses1DataContext dj = new DataClasses1DataContext();
DataClasses1DataContext dj = new DataClasses1DataContext();
var pwd = from p in dj.USERs
where p.USER_NAME.ToLower().Trim() == _userName.Text.ToString().ToLower().Trim()
select new { p.PASSWORD };
var utype = from u in dj.USERs
where u.USER_NAME.ToLower().Trim() == _userName.Text.ToString().ToLower().Trim()
select new { u.USER_TYPE };
if (_password.Text.ToString() == pwd.ToString().Trim())
//**in above line i m getting pwd.tostring() values to "admin "
//_password.text value "admin" .. so it fails to trim and hence compare.**
{
if (Session["username"] == null)
{
Session["username"] = _userName.Text.ToString().ToLower();
}
}
else
{
_wrongDetails.Text = "Wrong UserName or Password Entered!";
}
我怀疑您将密码存储为
char
而不是varchar
但是,将密码存储为纯文本是不好的做法。您应该查看散列存储的密码。我怀疑您将密码存储为
char
而不是varchar
但是,将密码存储为纯文本是不好的做法。您应该查看散列存储的密码。我认为在您的表中,列可能具有固定长度的char类型,因此可以追加空格。我认为在您的表中,列可能具有固定长度的char类型,因此可以追加空格