use case insensitive property match first, with insensitive fallback

This commit is contained in:
mgravell
2011-04-22 13:10:03 +01:00
parent 8ad6ebed97
commit dc39880331
+3 -1
View File
@@ -449,7 +449,9 @@ namespace Dapper
var setters = (
from n in names
select new { Name = n, Info = properties.FirstOrDefault(p => p.Name == n) }
let prop = properties.FirstOrDefault(p => string.Equals(p.Name, n, StringComparison.InvariantCulture)) // case sensitive first
?? properties.FirstOrDefault(p => string.Equals(p.Name, n, StringComparison.InvariantCultureIgnoreCase)) // case insensitive second
select new { Name = n, Info = prop }
).ToList();