Skip to content

SqlCommand: EnableOptimizedParameterBinding throws error when used together with Prepare #3835

@IAmTheCShark

Description

@IAmTheCShark

When calling Prepare together with EnableOptimizedParameterBinding, TdsExecuteRPC will throw an exception
SQL.ParameterDirectionInvalidForOptimizedBinding because it seems that the Prepare-Method injects addional parameters into the command, that seem to not set the direction correctly.
When debugging the exception i can see it sets the sqlRPC to sp_prepexec and uses 3 additional parameters.

To reproduce

Use the official Prepare-Example from here Link
and add EnableOptimizedParameterBinding = true;

Expected behavior

No exception or a more meaningful one.
I could not find any documentation regarding the issue.

Further technical details

Microsoft.Data.SqlClient 6.1.3 on a net 10 Visual Studio 2026

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions