У меня есть кредит класса C#, который сопоставлен с таблицей кредитов в базе данных сервера SQL. Я использую Do tNet EF Core 2.1. взаимодействовать с базой данных из моего кода.
public class Loan
{
public decimal Rate { get;set; }
// Other properties omitted for brevity
}
Когда я создаю соединение с базой данных, я настраиваю его для создания исключений, когда запрос не может быть выполнен на стороне сервера, следующим образом:
services.AddDbContext<DbContext>(options =>
options
.UseSqlServer(systemConfiguration.DatabaseConnectionString)
.ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning)));
Проблема в том, что при запросе десятичного столбца с использованием LINQ:
// Obtain DbContext from services
var loans = await dbContext.Loans.Where(l => l.Rate > 1.5m).ToListAsync();
Возникает исключительная ситуация, поскольку запрос не может быть выполнен на стороне сервера. Другие числовые c типы свойств, такие как int, работают нормально.