Exemplo n.º 1
0
    public static IRightHandSideExpression AddToBasket(this IRightHandSideExpression rhs, Expression <Func <IFruit> > alias)
    {
        var context   = Expression.Parameter(typeof(IContext), "ctx");
        var ctor      = typeof(Basket).GetConstructor(new[] { typeof(IFruit) });
        var newBasket = Expression.New(ctor, alias.Body);
        var action    = Expression.Lambda <Action <IContext> >(
            Expression.Call(context, nameof(IContext.Insert), null, newBasket),
            context);

        return(rhs.Do(action));
    }
 public static IRightHandSideExpression AddToBasket(this IRightHandSideExpression rhs, IFruit apple)
 {
     return(rhs.Do(ctx => ctx.Insert(new Basket(apple))));
 }
Exemplo n.º 3
0
 public static IRightHandSideExpression Error(this IRightHandSideExpression rhs, Claim claim, string message)
 {
     return(rhs.Do(ctx => ctx.Error(claim, message)));
 }