The string comparison with StringComparison.OrdinalIgnoreCase
works in memory or with IEnumerable<T>
. You are trying to use it with IQueryable<T>
, but the provider of your queryable does not understand it.
This works for me:
db.Users.FirstOrDefault(
s => s.Username.Equals(username, StringComparison.OrdinalIgnoreCase)
);