Используя ServiceStack.OrmLite 3.9.70.0 и следуя некоторым примерам из ServiceStack.OrmLite wiki.ServiceStack.OrmLite с DateTime.Month Predicate
Я пытаюсь выбрать строки, где дата LastActivity месяц = 1.
я получаю ошибку:
{"variable 'pp' of type 'Author' referenced from scope '', but it is not defined"}
LastActivity является обнуляемым DateTime, оп ределяется как:
public DateTime ? LastActivity { get; set;}
Я пробовал:
db.Select<Author>(q => q.LastActivity.Value.Month == 1);
И
var visitor = db.CreateExpression<Author>();
db.Select<Author>(visitor.Where(q => q.LastActivity.Value.Month == 1));
И
SqlExpressionVisitor<Author> ev = OrmLiteConfig.DialectProvider.ExpressionVisitor<Author>();
db.Select<Author>(ev.Where(q => q.LastActivity.Value.Month == 1));
И
var predicate = ServiceStack.OrmLite.PredicateBuilder.True<Author>();
predicate = predicate.And(q => q.LastActivity.Value.Month == 1);
db.Select<Author>(predicate);
Я т чтобы избежать использования строки sql в элементе выбора, потому что мне нравится проверка времени компиляции имен полей и типов.