Buemos Dias: Estoy prendiendo en lo que respecta a programación Estoy realizando un Login Basico con Visual Studio 2017 y sql server todo esta bien pero al momento de logear con usuario y contraseña me sale el mensaje:
"El procedimiento o la función 'usp_Login_ValidarLogin' esperaba el parámetro '@Contraseña', que no se ha especificado"
Codigos de Login.aspx.cs: using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls;
namespace Admin { public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) {
}
protected void btnLogin_Click(object sender, EventArgs e)
{
try
{
DataSet ds = Login.ValidarLogin(txtUserID.Text, txtPassword.Text);
DataTable dt = ds.Tables[0];
if (dt.Rows.Count == 0)
{
messageBox.ShowMessage("El usuario y/o la contaseña son incorrecto");
}
else
{
this.Session["UserId"] = dt.Rows[0]["Id"].ToString();
this.Session["UserName"] = dt.Rows[0]["Username"].ToString();
messageBox.ShowMessage("Login validado correctamente!");
}
}
catch (Exception ex)
{
messageBox.ShowMessage(ex.Message);
}
}
}
}
codigo de login.cs
using Admin.Classes; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web;
namespace Admin { public partial class Login { public static DataSet ValidarLogin(string sUserName, string sPassword) { SqlParameter[] dbParams = new SqlParameter[] { DBHelper.MakeParam("@Usuario", SqlDbType.VarChar, 0, sUserName), DBHelper.MakeParam("@Contrasena", SqlDbType.VarChar, 0, sPassword) }; return DBHelper.ExecuteDataSet("usp_Login_ValidarLogin", dbParams); } } }
sqlserver: tabla usuario
GO CREATE TABLE [dbo].[tblUser]( [Id] [int] IDENTITY(1,1) NOT NULL, [UserName] varchar NULL, [PerfilId] [int] NULL, CONSTRAINT [PK_tblUser] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO
procedimiento almacenado:
create procedure [dbo].[usp_Login_ValidarLogin] @Usuario Varchar(500), @Contraseña Varchar(150)
as Select Id,UserName from tblUser with(nolock) where userName = @Usuario and password = @Contraseña GO USE [master] GO ALTER DATABASE [Admin] SET READ_WRITE GO
Nota: el código no es propio De ante mano les doy gracias por la ayuda que puedan darme .