From b19ebef1918ecc4cc8d78d17079d8fe222c552f5 Mon Sep 17 00:00:00 2001 From: Adem Catamak Date: Wed, 12 May 2021 22:49:35 +0300 Subject: [PATCH] string comparison with OrdinalIgnoreCase During the string comparison instead of 'CurrentCultureIgnoreCase', 'OrdinalIgnoreCase' is used. As a result, the case of unit tests in Turkish systems resulting with a failure is resolved. --- src/Dapper.Contrib/SqlMapperExtensions.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Dapper.Contrib/SqlMapperExtensions.cs b/src/Dapper.Contrib/SqlMapperExtensions.cs index 9a30e805..2042f0c9 100644 --- a/src/Dapper.Contrib/SqlMapperExtensions.cs +++ b/src/Dapper.Contrib/SqlMapperExtensions.cs @@ -109,7 +109,11 @@ private static List KeyPropertiesCache(Type type) if (keyProperties.Count == 0) { - var idProp = allProperties.Find(p => string.Equals(p.Name, "id", StringComparison.CurrentCultureIgnoreCase)); + var idProp = allProperties.Find(p => string.Equals(p.Name, "id", StringComparison.OrdinalIgnoreCase)); + if (idProp == null) + { + idProp = allProperties.Find(p => string.Equals(p.Name, "id", StringComparison.CurrentCultureIgnoreCase)); + } if (idProp != null && !idProp.GetCustomAttributes(true).Any(a => a is ExplicitKeyAttribute)) { keyProperties.Add(idProp);