2013-05-04 6 views
0

Я использовал трехуровневую архитектуру для вставки в базу данных. Я не знаю, какой код мне следует писать при нажатии кнопки click в файле .cs.Can some1, пожалуйста, помогите мне?нужна помощь по событию Button

Extension.cs

public static DbParameter CreateAndSetParameter(this DbCommand cmd,string parameterName,DbType dbtype,int size,ParameterDirection direction) 
{ 
    DbParameter p = cmd.CreateParameter(); 
    p.ParameterName = parameterName; 
    p.DbType =dbtype; 
    p.Size = size; 
    p.Direction = direction; 
    cmd.Parameters.Add(p); 
    return p; 
} 
public static DbParameter CreateAndSetParameter(this DbCommand cmd, string parameterName, DbType dbtype, int size,object value) 
{ 
    DbParameter p = cmd.CreateParameter(); 
    p.ParameterName = parameterName; 
    p.DbType = dbtype; 
    p.Size = size; 
    p.Direction = ParameterDirection.Input; 
    p.Value = value; 
    cmd.Parameters.Add(p); 
    return p; 
} 

DataGeneric.cs

 public static int AddSlider(string @Imgname,string @Imgalt) 
    { 
    int rows=-1; 
    string Query="insert into [slider](ImageName,ImageAlt) values(@Imgname,@Imagealt)"; 
    DbCommand cmd = DataGeneric.CreateCommand(); 
    cmd.CommandText = Query; 
    cmd.CreateAndSetParameter("@Imgname",DbType.String,50,Imgname); 
    cmd.CreateAndSetParameter("@Imgalt", DbType.String, 50, Imgalt); 
    rows = DataGeneric.ExecuteNonQuery(cmd); 
    return rows; 
    } 

Дизайн:

ImageName:<asp:TextBox id="txt_name" runat="server" /><br /> 
    ImageAlt:<asp:TextBox ID="txt_alt" runat="server" /> 
    <asp:Button ID="btn" runat="server" onclick="btn_Click" Text="Insert" /> 

Код:

protected void btn_Click(object sender, EventArgs e) 
{ 
    ???????????? 
} 
+0

проверить мой ответ вы ДНТ поставить соединение с командой –

ответ

0
protected void btn_Click(object sender, EventArgs e) 
{ 

    DataGeneric.AddSlider(txt_name.Text,txt_alt.Text); 

} 

, как Addslider статический метод, который можно непосредственно вызвать этот метод, используя имя класса

изменить ваши addslider Митос

public static int AddSlider(string Imgname,string Imgalt) 
{ 
int rows=-1; 
SqlConnection conn = new SqlConnection("connection string"); 
conn.Open(); 
string Query="insert into [slider](ImageName,ImageAlt) values(@Imgname,@Imagealt)"; 
DbCommand cmd = DataGeneric.CreateCommand(); 
cmd.Connection = conn; 
cmd.CommandText = Query; 
cmd.CreateAndSetParameter("@Imgname",DbType.String,50,Imgname); 
cmd.CreateAndSetParameter("@Imgalt", DbType.String, 50, Imgalt); 
rows = DataGeneric.ExecuteNonQuery(cmd); 
conn.Close(); 
return rows; 
} 
+0

Спасибо заранее. ... Я использую отдельный класс для имени соединения и провайдера ... & теперь используя метод ур его бросание исключения _Формат строки инициализации не соответствует спецификации, начинающейся с индекса 0._ –

+0

Я просто добавил, что соединение открыто –

+0

не работает.... –