0

プロジェクトでSqlDataSource1コントロールを使用しています。

ソースコード:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:CTSConnectionString %>" SelectCommand="Vehicle" SelectCommandType="StoredProcedure"  OnSelecting="SqlDataSource1_Selecting">
   <SelectParameters>
      <asp:Parameter Name="veh_regn_no" Type="String" />
      <asp:Parameter Name="start_date" Type="DateTime" />
      <asp:Parameter Name="end_date" Type="DateTime" />
   </SelectParameters>
</asp:SqlDataSource>

背後にあるコード:

Protected Sub SqlDataSource1_Selecting(ByVal sender As Object, ByVal e As SqlDataSourceSelectingEventArgs)
Try
            If (ddlVehicleReg.SelectedIndex > 0) AndAlso (txtStartDate.Text <> "") AndAlso (txtEndDate.Text <> "") Then
                e.Command.Parameters("veh_regn_no").Value = Convert.ToString(ddlVehicleReg.SelectedValue)
                e.Command.Parameters("start_date").Value = DateTime.ParseExact(txtStartDate.Text, "dd/MM/yyyy HH:mm:ss", Nothing)
                e.Command.Parameters("end_date").Value = DateTime.ParseExact(txtEndDate.Text, "dd/MM/yyyy HH:mm:ss", Nothing)
            End If
        Catch ex As Exception
        End Try
    End Sub

エラーが発生しました:

ParameterName'veh_regn_no'のSqlParameterは、このSqlParameterCollectionに含まれていません。

どこで間違えたの?

4

1 に答える 1

0

はい、上記の質問に対する答えが得られました。veh_regn_noの前に@記号を使用しますこのように使用します

e.Command.Parameters("@veh_regn_no").Value
e.Command.Parameters("@start_date").Value
e.Command.Parameters("@end_date").Value
于 2012-08-24T04:17:06.630 に答える