Seperti yang Anda tunjukkan, ini karena C#2.0 tidak mendukung parameter opsional.
Salah satu solusinya mungkin untuk membungkus .NET stored procedure dalam prosedur tersimpan T-SQL biasa yang menerima parameter default.
Misalnya:
CREATE PROCEDURE TestProcWrapper
(
@TestIntWrapperParam int = null
)
AS
EXEC TestProc @TestInt = @TestIntWrapperParam
Agak jelek tapi mungkin bisa membantu Anda saat ini.