Why do you prefix stored proc names with sp?You don't call variable "x" in your C# code
You don't call a table "Products" in your database
So why do you call your stored procedures
Are prefixes really necessary in stored proc names? Isn't it obvious enough that it's a stored procedure?
(If you have to prefix your stored procs, don't use "sp" because then they appear to be system stored procs...)