problema a actualizar tabela C#

alfinete

Power Member
em c#

tenho este metodo no form principal que capta os dados para as vars respectivas

Código:
private bool actualiza_stock_filme()
        {
            Dados d = new Dados();
            bool resul = true;
            string[] dados = new string[2];

            string id = Session["id_filme"].ToString ();

            dados[0] = id;
            string stockactual = Session["stock"].ToString();
            int stockfinal = (Convert.ToInt32(stockactual)) + 1;
            string stk = Convert.ToString(stockfinal);
            dados[1] = stk;
            resul = d.actualiza_filme(dados);

            return resul;

        }
esta é o metodo que vair guardar os dados na store procedure

Código:
 public bool actualiza_filme(string[] dados)
        {
            dbm = new DAL.DBManager();
            bool resul = false;


            dbm.connection_string = ligacaovideo;
            dbm.Open();
            dbm.commType = CommandType.StoredProcedure;
            dbm.commText = "update_stock";
            dbm.CreateParameter(2);
            dbm.AddParameter(0, "@idfilme", dados[0], ParameterDirection.Input);
            dbm.AddParameter(1, "@stock", dados[1], ParameterDirection.Input);
             object obj = dbm.ExecuteNonQuery();
            if (obj != null)
            {
                if ((int)obj > 0)
                    resul = true;
            }
            dbm.Close();
            dbm.Dispose();
            return resul;

        }
aqui temos a storre procedure

Código:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go



-- =============================================
-- Author:        <Author,,Name>
-- Create date: <Create Date,,>
-- Description:    faz apdate ao filme quando este é entregue e alugado
-- =============================================
ALTER PROCEDURE [dbo].[update_stock]

@idfilme int,
@stock int
    
AS
BEGIN
    
    SET NOCOUNT ON;


UPDATE dbo.TabFilme
SET Stock = @stock
WHERE numfilme = @idfilme


END
supostamente esta tdo bem , ao fazer debug, passa bem os valores

mas no metodo da classe

em

Código:
 if (obj != null)
             {
                 if ((int)obj > 0)
                     resul = true;
             }

deveria entrar no 2º if , para actualizar e não passa

não sei pq

agradecia um help
 
Back
Topo