我可以从 ControlParameter 获取 ParameterValue(而不是 DefaultValue)吗
Can I get the ParameterValue from a ControlParameter (instead of the DefaultValue)
我在尝试从 ControlParameter
中获取值时遇到了一些麻烦(在标记的 sqlDataSource
中声明)。
调试时,我得到这个:
如您所见,默认值是 ""
,但 ParameterValue
是 "1" {String}
。是否可以从后面的代码中获取 ParameterValue
?
附加信息:
- 我已尝试在
inserting
、inserted
、updating
和 updated
事件处理程序期间进行调试。
ControlParameter
在标记中声明为:<asp:ControlParameter ControlID="hidMetricID" Name="metricID" DefaultValue="" />
- 数据源正确 inserts/updates 数据库并且没有错误。
- 我在 Visual Studio 2010 上使用 VB.NET(尽管也欢迎使用 C# 答案)。
还有什么我想念的吗?能不能只见树木不见森林?
与其尝试直接从 SqlDataSource
的参数中获取值,不如尝试查看已触发的事件(inserting
、inserted
、selecting
, selected
, updating
, updated
, deleting
或 deleted
).
请注意,默认的 Sub
/void
使用 System.Web.UI.WebControls.SqlDataSourceStatusEventArgs
(e
)。这将包含发送到 SQL 服务器的参数。
使用 e
,我们可以找到 e.Command.Parameters
并且在此集合中,您可以访问这些值。
例如,假设问题中的代码在 'updating' 或 'updated' 事件处理程序中 运行,您可以使用:
e.Command.Paramters("metricGroupID").Value
这将 return 数据库将在 Update
命令中使用的值。
我在尝试从 ControlParameter
中获取值时遇到了一些麻烦(在标记的 sqlDataSource
中声明)。
调试时,我得到这个:
如您所见,默认值是 ""
,但 ParameterValue
是 "1" {String}
。是否可以从后面的代码中获取 ParameterValue
?
附加信息:
- 我已尝试在
inserting
、inserted
、updating
和updated
事件处理程序期间进行调试。 ControlParameter
在标记中声明为:<asp:ControlParameter ControlID="hidMetricID" Name="metricID" DefaultValue="" />
- 数据源正确 inserts/updates 数据库并且没有错误。
- 我在 Visual Studio 2010 上使用 VB.NET(尽管也欢迎使用 C# 答案)。
还有什么我想念的吗?能不能只见树木不见森林?
与其尝试直接从 SqlDataSource
的参数中获取值,不如尝试查看已触发的事件(inserting
、inserted
、selecting
, selected
, updating
, updated
, deleting
或 deleted
).
请注意,默认的 Sub
/void
使用 System.Web.UI.WebControls.SqlDataSourceStatusEventArgs
(e
)。这将包含发送到 SQL 服务器的参数。
使用 e
,我们可以找到 e.Command.Parameters
并且在此集合中,您可以访问这些值。
例如,假设问题中的代码在 'updating' 或 'updated' 事件处理程序中 运行,您可以使用:
e.Command.Paramters("metricGroupID").Value
这将 return 数据库将在 Update
命令中使用的值。