Link to home
Start Free TrialLog in
Avatar of is_staff
is_staff

asked on

System.Data.SqlClient.SqlException: Procedure or function 'wp_session_spLogout' expects parameter '@SessionKey', which was not supplied.

I have a stored procedure that is throwing a web error whenever a user is logged in and the system times out . I am attaching my stored procedure and the web error log to this question. What do I need to include in my stored procedure to eliminate this web error from appearing on a daily basis?
wp-session-spLogout.docx
web-error.docx
Avatar of venk_r
venk_r
Flag of United States of America image

From the exception that you attached looks like the sessionkey value isn't been passed at times and it throws the error.


System.Data.SqlClient.SqlException: Procedure or function 'wp_session_spLogout' expects parameter '@SessionKey', which was not supplied
Avatar of is_staff
is_staff

ASKER

This is true. I am wondering why this is happening and how can I prevent this from happening. This error has some connection with the files below. Any ideas?  Thank you.
TimeOut2.aspx
TimeOut2.aspx.cs
This error is being generated by your web app and has nothing to do with the proc. So whenever this code runs on your website for whatever reason the actual parameter has not been set.

You will have to modify your webmethod to ensure the parameter is being passed to the proc always.

You can update your proc to allow for default values like below but I don't think this will solve your problem. You will still have to ensure that your code in your web method does always include the parameter which for some reason is not.

ALTER   PROCEDURE [dbo].[wp_session_spLogout]
      @SessionKey      VARCHAR(64) = ''
AS

if(@SessionKey = '') BEGIN SET @SessionKey = NULL END

if(@SessionKey IS NOT NULL)
BEGIN
 'do updates etc.
END
Do you think it has anything to do with the API call being used?
Do you have the code for the API call? My guess is that the API call passes a null to the procedure.
The only code I see for the API call is located in Timeout2.aspx.cs.
Any other suggestions? This error is occuring whenever the web method hits timeout2.aspx page.
ASKER CERTIFIED SOLUTION
Avatar of is_staff
is_staff

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Resolved