public override bool TryConvert(IEntityReference <T> from, out T to) { if (from == null) { to = default; return(false); } to = from.AsEntity(); return(true); }
public IEntitySelectQueryBuilder <T> Select <TView>(IEntityReference <T> entityReference, out IResultReader <TView> resultReader) where TView : class { if (_primaryKeys.Length == 0) { ExceptionHelper.ThrowNoPrimaryKey <T>(); } var entity = entityReference.AsEntity(); var builder = new SelectBuilder <T>(_schema, _entityModel); foreach (var field in _primaryKeys) { builder.Where.AndAlso(field, ComparisonOperator.AreEqual, entity); } builder.Range.Limit(1); resultReader = builder.Projection.AddView <TView>(); return(builder); }