我在尝试从ControlParameter
中获取值时遇到了一些麻烦(在标记sqlDataSource
中声明)。
调试时,我得到这个:
如您所见,DefaultValue为""
,但ParameterValue
为"1" {String}
。是否可以从代码中获取ParameterValue
?
其他信息:
inserting
,inserted
,updating
和updated
事件处理程序中尝试过调试。ControlParameter
在标记中声明为:<asp:ControlParameter ControlID="hidMetricID" Name="metricID" DefaultValue="" />
还有什么我想念的吗?我能否透过树木看到木头?
答案 0 :(得分:0)
不要试图直接从SqlDataSource
的参数中获取值,而是尝试查看已触发的事件(inserting
,inserted
,selecting
, selected
,updating
,updated
,deleting
或deleted
)。
请注意,默认Sub
/ void
使用System.Web.UI.WebControls.SqlDataSourceStatusEventArgs
(e
)。这将包含发送到SQL服务器的参数。
使用e
,我们可以找到e.Command.Parameters
,在此集合中,您可以访问这些值。
例如,假设问题中的代码是在“更新”或“更新”事件处理程序中运行的,您可以使用:
e.Command.Paramters("metricGroupID").Value
将返回数据库将在Update
命令中使用的值。