2011-12-15 4 views
0

Я пытаюсь передать параметр в текстовое поле, которое связывается с моей базой данных и запускает хранимую процедуру при нажатии кнопки.Передача параметра в TextBox

У меня есть кнопка, работающая, если я жестко кодирую значение параметра, но мне нужно принять параметры в текстовом поле.

Любые идеи, как я могу исправить этот код, чтобы выполнить это?

Это один из моих классов

public FixPayrollMonth PayrollMonth() 
{ 
    return StoreProcPayrollMonth("fix_Payroll_PayingMonth"); 
} 

private FixPayrollMonth StoreProcPayrollMonth(string storeprocedurename) 
{ 
    FixPayrollMonth result = new FixPayrollMonth() {IsSuccess = false }; 
    SqlCommand cmd = new SqlCommand(storeprocedurename, Connection); 
    cmd.Parameters.Add(new SqlParameter("@Month_Change", 123456));   
    cmd.CommandType = System.Data.CommandType.StoredProcedure; 
    cmd.Connection.Open(); 

    using (var data = cmd.ExecuteReader()) 
    { 
     while (data.Read()) 
     { 
      result.MonthChanged = Convert.ToInt32(data["MonthChanged"]); 
      result.IsSuccess = Convert.ToBoolean(data["IsSuccess"]); 
     } 
    } 
    return result; 
} 

Это моя кнопка мыши ... Мне нужно, чтобы связать его с моим текстовое поле под названием txtPay

protected void btnFixMnth_Click(object sender, EventArgs e) 
{ 
    var result = repo.PayrollMonth(); 
    if (result.IsSuccess) 
    { 
     lblMessageBoxMnthChg.Text = "Succesful Month has been changed to: " + result.MonthChanged; 
    } 
    else 
    { 
     lblMessageBoxMnthChg.Text = "Failed to change month"; 
    } 
} 
+3

Что вы имеете в виду под «передать параметр в моем текстовом поле» ? Вы просто хотите установить его значение? 'txtPay.Text =" some value "' выполнит это. – David

ответ

0

Ваш призыв к repo.PayrollMonth бы требуется параметр, передаваемый в значение текстового поля. Так что в вашем случае нажатия кнопки вы должны сделать следующее:

var result = repo.PayrollMonth(txtPay.Text); 

И вы репо должны быть изменены, чтобы выглядеть следующим образом:

public FixPayrollMonth(string pay) 
{ 
     StoreProcPayrollMonth("fix_Payroll_PayingMonth", pay); 
} 

private FixPayrollMonth StoreProcPayrollMonth(string storeprocedurename, string pay) 
{ 
    FixPayrollMonth result = new FixPayrollMonth() {IsSuccess = false }; 
    SqlCommand cmd = new SqlCommand(storeprocedurename, Connection); 
    cmd.Parameters.Add(new SqlParameter("@Month_Change", pay));   
    cmd.CommandType = System.Data.CommandType.StoredProcedure; 
    cmd.Connection.Open(); 



    using (var data = cmd.ExecuteReader()) 
    { 
     while (data.Read()) 
     { 
      result.MonthChanged = Convert.ToInt32(data["MonthChanged"]); 
      result.IsSuccess = Convert.ToBoolean(data["IsSuccess"]); 
     } 
    } 

    return result; 
} 
+0

Спасибо, что сработали :) – user1100021

+0

Рад, что я мог помочь – mreyeros

Смежные вопросы