I can't give specific help unless I see the stored procedure contents, but here are some ideas off the top of my head:
- Maybe ExecuteScalar is returning SqlInt32 rather than int.
- Maybe you are supposed to be getting the value of the output parameter.
- Maybe @College is being passed in as the wrong data type (e.g., maybe an int is expected, but maybe you are passing in a string).
- Maybe you did something wrong and there are no records to return from the stored procedure based on the inputs you gave it.
Some ways you can solve this:
- Log any calls (e.g., to a different table) to the stored procedure so you can run them yourself from SQL Server Management Studio.
- Use SQL Profiler to see exactly what is being passed to SQL Server.
- Set some breakpoints to be sure all your values are as you expect (e.g., ddlistschools.SelectedValue).