我对此代码有疑问。
<asp:SqlDataSource ID="ReservationRadSchedualerSqlDataSource" OnDeleting="ReservationRadSchedualerSqlDataSource_Deleting" runat="server" ConnectionString="<%$ ConnectionStrings:NMRconstr %>"
SelectCommand="GetReservationAppointments" SelectCommandType="StoredProcedure"
InsertCommand="INSERT INTO [ReservationAppointments] (Subject , Description, Start, [End], RecurrenceRule , Username , MachinePKID) VALUES (@Subject , @Description, @Start, @End, @RecurrenceRule , @username , @macPKID)"
UpdateCommand="EXEC UpdateReservationAppointment @Subject , @Description , @Start , @End , @RecurrenceRule , @username , @ID , @macPKID"
DeleteCommand="EXEC DeleteAppointmentByUser @ID , @username"
>
<UpdateParameters>
<asp:ControlParameter ControlID="ReservationScedhualerSelectMachineRadDropDownList" Name="macPKID" PropertyName="SelectedValue" Type="Int32" />
</UpdateParameters>
<SelectParameters>
<asp:ControlParameter ControlID="ReservationScedhualerSelectMachineRadDropDownList" Name="macPKID" PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
<InsertParameters>
<asp:SessionParameter Name="username" SessionField="username" Type="string" />
<asp:ControlParameter ControlID="ReservationScedhualerSelectMachineRadDropDownList" Name="macPKID" PropertyName="SelectedValue" Type="Int32" />
</InsertParameters>
<DeleteParameters>
<asp:SessionParameter Name="username" SessionField="username" Type="string" />
</DeleteParameters>
</asp:SqlDataSource>
在删除命令参数中,会话用户名参数导致错误“必须声明标量变量“@username”。”
我试图弄清楚我做错了什么,但我找不到。奇怪的是它适用于 INSERT 和 UPDATE 命令,但不适用于 DELETE 命令。
我很乐意得到您的帮助以找出导致此错误的原因。
谢谢。