将参数传递给LinqDataSource“OnSelecting”用于存储过程
问题描述:
我正在构建一个半精细的RadGrid,在我的NestedViewTemplate中我想要一个使用存储过程从数据库获取数据的LinqDataSource。将参数传递给LinqDataSource“OnSelecting”用于存储过程
这里是我到目前为止
<asp:HiddenField runat="server" ID="HiddenID" Value='<%#DataBinder.Eval(Container.DataItem, "ID")%>' />
<asp:LinqDataSource ID="LinqDataSource1" runat="server" OnSelecting="LinqDataSource_Selecting">
<WhereParameters>
<asp:ControlParameter ControlID="HiddenID" PropertyName="ID" Type="String" Name="ID" />
</WhereParameters>
</asp:LinqDataSource>
我的任何代码隐藏...
Protected Sub LinqDataSource_Selecting(ByVal sender As Object, ByVal e As LinqDataSourceSelectEventArgs)
Dim hdc As New DAL.HealthMonitorDataContext()
e.Result = hdc.bt_HealthMonitor_GetByID(Integer.Parse(e.WhereParameters("ID")))
End Sub
可惜hdc.bt_HealthMonitor_GetByID(Integer.Parse(e.WhereParameters("ID")))
不打好...
异常详细信息: System.FormatException:输入字符串为不是以正确的格式。
答
WhereParameters中的“PropertyName”不正确。
<asp:ControlParameter ControlID="HiddenID"
PropertyName="Value"
Type="String"
Name="ID" />
忘记它,我在WhereParameters中的“PropertyName”不正确。 ' '基本上我是一个延迟...对不起。 –
2010-03-14 02:41:59