Size: a a a

2021 April 27

V

Vyacheslav in pro.net
Сорри, я не обедал ещё. Оформлю всё нормально, как руки дойдут.
источник

AK

Andrei Kurosh in pro.net
так и не понял, что оно конкретно делает - инлайнит выражение в место вызова expr.Use(...)?
источник

V

Vyacheslav in pro.net
да
источник

V

Vyacheslav in pro.net
и возвращает новый Expression
источник

V

Vyacheslav in pro.net
который корректно работает с EF
источник

RS

Rustam Sayfutdinov in pro.net
Только, наверное на гитхаб. Там надо использовать секреты. В интернете можно найти статьи)
источник

IC

Ilya Chernoudov in pro.net
назначение нугет пакета от меня ускользает, к сожалению
источник

IC

Ilya Chernoudov in pro.net
но! у тебя же есть сорс генераторы, нафига столько копипасты?
источник

V

Vyacheslav in pro.net
Когда много различных фильтров есть на сущностях EF и они переиспользуют куски друг друга, эта штука позволяет не дублировать код с кучей условий.
источник

V

Vyacheslav in pro.net
Какие?
источник

MK

Mark Kochanov in pro.net
Мне казалось есть похожие пакеты
источник

V

Vyacheslav in pro.net
В .NET так же для Func генерируют код?
источник

IC

Ilya Chernoudov in pro.net
сорс генераторы они одни) ты там руками генерируешь кучу перегрузок для разного количества параметров
источник

AK

Andrei Kurosh in pro.net
ну да, любопытно, но ведь с EF можно и проще поступить:

Expression<Func<Client, bool>> isValid = c => c.Name != null;
Expression<Func<Client, bool>> isEligible = c => c.IsEligible;
Expression<Func<Client, bool>> isRich = c => c.Money > 1000;

db.Clients.Where(isValid).Where(isEligible).Where(isRich) ...


или нечто вроде:

db.Clients.Where(ExprCombine.And(isValid, isEligible, isRich))
источник

V

Vyacheslav in pro.net
мне нужны примеры. Так-то я с удовольствием заиспользую
источник

Dv

Dr. Friedrich von Ne... in pro.net
Ах, если б можно было тут написать var!
источник

Dv

Dr. Friedrich von Ne... in pro.net
Но нет!
источник

AK

Andrei Kurosh in pro.net
когда речь идет про конъюнкцию, EF сам из коробки все умеет. а вот дизъюнкция его слабое место, да
источник

Dv

Dr. Friedrich von Ne... in pro.net
var если и можно будет писать, то в другом месте!
источник

V

Vyacheslav in pro.net
можно
var e = Expr.New((Client c) => c.Name != null)
источник