我在同一页面上有一个SqlDataSource,一个Gridview和一个DropDownList。 DropDownList选项与一组SelectCommands
,UpdateCommands
和DeleteCommands相关联,以便我可以利用GridView AutoGenerateEditButton =“true”和AutoGenerateUpdateButton =“true”机制。事件顺序后面的SqlDataSource代码
Page_Load
{
switch(ddl.SelectedItem.Text)
{
case "A":
sqlDS.SelectCommand = "Select * From A";
sqlDS.UpdateCommand = "Update A Set Name = @Name WHERE ID = @ID";
sqlDS.DeleteCommand = "Delete A WHERE ID = @ID";
break;
...
}
sqlDS.DataBind();
grd.DataSourceID = sqlDS.ID;
grd.DataBind();
}
如何或在什么时候需要添加参数?它是自动的吗?我基本上只想要更新和删除表中的列的能力。我想在实际的.cs文件中完成所有这些操作,而不是在.aspx文件中完成,因为我最终希望使其更具动态性。但现在我只是想要了解基础知识。我怀疑我可能在不适当的事件中使用了DataBind()逻辑,因为我没有完全理解与数据绑定关联的事件的顺序。
查询不复杂,不涉及连接或视图;它们是简单的SELECT表单。
有一个名为动态数据的内置模板,附带ASP。网络开箱即用,通常可以查看,更新,编辑和删除数据源中任何表中的记录。您还可以自定义单个页面,单个操作,字段类型等。有关详细信息,请访问:http://msdn.microsoft.com/en-us/library/ee845452(v=VS.100).aspx – mellamokb 2012-04-21 02:14:43
您是否考虑过使用'LinqDataSource'和LINQ-To-SQL /等。用于处理数据库?它可以更容易,因为它自动处理选择/插入/更新的管道。 – mellamokb 2012-04-21 02:17:08
即使您不使用动态数据,查看某些工作原理的源代码也可能不是一个好主意,以了解如何简化代码并利用内置工具生成SQL语句等等。这种事情以前已经做过很多次了,取决于你如何去做这件事情,要做到这一点更容易,也更困难。 – mellamokb 2012-04-21 02:41:52