我可以从ControlParameter(而不是DefaultValue)获取ParameterValue吗?

时间:2015-05-27 16:02:27

标签: asp.net vb.net visual-studio-2010 parameters

我在尝试从ControlParameter中获取值时遇到了一些麻烦(在标记sqlDataSource中声明)。

调试时,我得到这个: Debug of ControlParameter

如您所见,DefaultValue为"",但ParameterValue"1" {String}。是否可以从代码中获取ParameterValue

其他信息:

  • 我在insertinginsertedupdatingupdated事件处理程序中尝试过调试。
  • ControlParameter在标记中声明为:<asp:ControlParameter ControlID="hidMetricID" Name="metricID" DefaultValue="" />
  • 数据源正确插入/更新数据库并且不会出错。
  • 我在Visual Studio 2010上使用VB.NET(虽然也欢迎使用C#答案)。

还有什么我想念的吗?我能否透过树木看到木头?

1 个答案:

答案 0 :(得分:0)

不要试图直接从SqlDataSource的参数中获取值,而是尝试查看已触发的事件(insertinginsertedselectingselectedupdatingupdateddeletingdeleted)。

请注意,默认Sub / void使用System.Web.UI.WebControls.SqlDataSourceStatusEventArgse)。这将包含发送到SQL服务器的参数。

使用e,我们可以找到e.Command.Parameters,在此集合中,您可以访问这些值。

例如,假设问题中的代码是在“更新”或“更新”事件处理程序中运行的,您可以使用: e.Command.Paramters("metricGroupID").Value将返回数据库将在Update命令中使用的值。