Не получается передать null в Expression

85
24 января 2021, 17:30

Есть такой рабочий код:

     string tempTitle = filter.Title ?? string.Empty;
     string tempAddress = filter.Address ?? string.Empty;
     var query = this.db.ShopRepository.Read(m =>
                       (m.address.Contains(tempAddress))
                    || (m.shop_id.Contains(tempTitle))
                 )
                 .OrderBy(shop => shop.shop_id)
                 .ToList();


    public virtual IQueryable<T> Read(Expression<Func<T, bool>> expressionWhere)
    {
        return context.Set<T>().AsNoTracking().Where(expressionWhere);
    }

Как Linq переделать в вид :

var query = this.db.ShopRepository.Read(m =>
                           (filter.Address == null || m.address.Contains(filter.Address))
                        || (filter.Title == null || m.shop_id.Contains(filter.Title))
                     )
                     .OrderBy(shop => shop.shop_id)
                     .ToList();

Ошибка:

42P08: не удалось определить тип данных параметра $1

READ ALSO
EF Core странно кешируется внутри Scope

EF Core странно кешируется внутри Scope

Поймал багу с Entity Framework Core 22 (Npgsql) и не могу понять, что происходит за кулисами, в чем и прошу помочь разобраться

107
C# При обращении к процедуре ошибка PLS-00306

C# При обращении к процедуре ошибка PLS-00306

Собственно при таком раскладе происходит эта ошибка (смвложения) два варианта обращения к процедуре, с разным аргументом, необходимы по причине...

92
Как работает GroupBy

Как работает GroupBy

Всем доброго времени суток! Прошу помочь разобраться в том, как работает GroupBy и в чем разница приведенного ниже кода

129