3 messaggi dal 14 ottobre 2004
Ciao a tutti!
Ho un problema da risolvere: non riesco a capire perchè
questo metodo mi ritorna un valore null :

public string Login(string email, string password)
{

SqlConnection myConnection = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
SqlCommand myCommand = new SqlCommand("CustomerLogin", myConnection);
myCommand.CommandType = CommandType.StoredProcedure;

SqlParameter parameterEmail = new SqlParameter("@Email", SqlDbType.NVarChar, 50);
parameterEmail.Value = email;
myCommand.Parameters.Add(parameterEmail);

SqlParameter parameterPassword = new SqlParameter("@Password", SqlDbType.NVarChar, 50);
parameterPassword.Value = password;
myCommand.Parameters.Add(parameterPassword);

SqlParameter parameterIdCliente = new SqlParameter("@IdCliente", SqlDbType.Int, 4);
parameterIdCliente.Direction = ParameterDirection.Output;
myCommand.Parameters.Add(parameterIdCliente);

myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();

int ID = (int)(parameterIdCliente.Value);

if (ID == 0)
{
return null;
}
else
{
return ID.ToString();
}




}


la stored procedure che utilizzo è la seguente:


ALTER Procedure CustomerLogin ( @Email nvarchar(50), @Password nvarchar(50), @IdCliente int OUTPUT )

AS SELECT @IdCliente =IdCliente
FROM MyStoreClienti
WHERE Email = @Email AND Password = @Password
IF @@Rowcount < 1 SELECT @IdCliente = 0


Potete aiutarmi?

Daniela
Dany62 ha scritto:

...
myCommand.ExecuteNonQuery();
...


Sicuro?

Devi leggere l'output parameter @IdCliente...

Matteo Casati
GURU4.net
3 messaggi dal 14 ottobre 2004
Vuoi dire che non devo usare ExecuteNonQuery?

Daniela
3.121 messaggi dal 29 ottobre 2001
Contributi | Blog
Dany62 <Dany62> ha scritto:
Vuoi dire che non devo usare ExecuteNonQuery?

Innanzitutto controlla che la SP funzioni correttamente. Prova a richiamarla con i parametri con il query analyzer.

Ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.