Dapper.Contrib icon indicating copy to clipboard operation
Dapper.Contrib copied to clipboard

GetAsync fails on SQL Server when the primary key property is a reserved SQL keyword

Open ghills opened this issue 3 years ago • 0 comments

https://github.com/DapperLib/Dapper.Contrib/blob/cf24f6bdc577b1e071c3764ddfb2cf3382531405/src/Dapper.Contrib/SqlMapperExtensions.Async.cs#L33

The query building for Get/GetAsync do simple string formatting to include the property name for the primary key of the table instead of formatting the escaped column name.

For example, a property named Key with the ExplicitKeyAttribute should work but fails because KEY is a reserved SQL keyword. The column name should be included as WHERE [Key] = @id instead.

ghills avatar Dec 05 '22 18:12 ghills