ASp.Net GridView使用存储过程进行更新

时间:2013-03-20 21:36:53

标签: asp.net web-applications gridview datagridview

我已经阅读了大量的网站。如果你调用一些代码而没有解释它是如何生成的(设计视图与类型化)一个例子,或者只是想使用简单的select和update语句,那么有很多“例子”。

我有一个Gridview。我使用存储过程中的代码填充它。现在我想编辑数据。我没有通过设计视图(数据源,列等)设置Gridview的属性。我的问题是,如何设置它以允许编辑并使用SP将其发送回数据库?

我现在必须手动创建带代码的列,因为我选择不在设计视图中设置属性吗?

在设计视图中设置属性并走这条路线会更好吗?我就这样开始了,但是在使用SP进行更新时遇到了问题。

我想整个在设计师中做到这一点在代码中做的事让我感到困惑。

我开始在html和c#中添加RowEdit,RowCommand等,但在运行时仍然没有在网页上看到EDIT / CANCEL。

2 个答案:

答案 0 :(得分:0)

学习使用ObjectDataSource。它为您提供了存储所用数据的最大自由度 - 您可以将选择,更新和删除委托给外部类,您只需编写使用ado,linq,hibernate,Web服务或其他任何内容的代码。

直接根据固定数据库结构编写视图会迟早会对您造成伤害。

答案 1 :(得分:0)

使用名称StckDetails创建表 enter image description here

使用anme sp_StckDetails1创建过程后

ALTER程序[dbo]。[sp_StockDetails1] (
           @Action varchar(20),            @Branch_ID int = null,            @Stock_Name varchar(50)= null,            @Stock_code varchar(20)= null,            @Qty int = null,            @Purchase_Price decimal(18,0)= null,            @Sales_Price decimal(18,0)= null,            @Order_ID int = null ) 如 开始 设置NOCOUNT ON; 如果@Action ='更新' 开始 更新StockDetails设置数量= @数量,Purchase_Price = @ Purchase_Price,Sales_price = @ Sales_Price,其中Order_ID = @ Order_ID 结束 端

然后添加c#代码  标签lbl_id = GridView2.Rows [e.RowIndex] .FindControl(" Label2")作为标签;             TextBox txt1_qty = GridView2.Rows [e.RowIndex] .FindControl(" TextBox7")as TextBox;             TextBox txt2_PP = GridView2.Rows [e.RowIndex] .FindControl(" TextBox8")as TextBox;             TextBox txt3_sp = GridView2.Rows [e.RowIndex] .FindControl(" TextBox9")as TextBox;

char <- strsplit(as.character(df$letters), ',', fixed = T)
data.frame(letter=unlist(char), value=rep(df$value, lengths(char)))

Gridview设计代码是aspx代码

                                                                                           &#39;&GT;                                                                                                                         &#39;&GT;                                                                                                                         &#39;&GT;                                                                                                                         &#39;&GT;                                                                                                                         &#39;&GT;                                                                               &#39;&GT;                                                                                                                         &#39;&GT;                                                                               &#39;&GT;                                                                                                                         &#39;&GT;                                                                               &#39;&GT;                                                                                                                       .........................................

尝试它会发信息

相关问题