private void UpdateResult(RecipeItemParseResult result, BaseIngredient ingredient)
        {
            var(id, typename) = Units.ToSelection(result.Unit);
            var item = result.Item;

            item.ItemId       = ingredient?.Id;
            item.Quantity     = result.Quantity;
            item.UnitId       = id;
            item.UnitTypeName = typename;
        }
        private bool TryGetServingSize(BaseIngredient ingredient, Unit unit, out IServingSize serving)
        {
            serving = null;

            if (unit is WeightUnit weight)
            {
                serving = ingredient.ServingSizeWeight;
            }
            else if (unit is VolumeUnit volume)
            {
                serving = ingredient.ServingSizeVolume;
            }
            else if (unit is CustomUnit custom)
            {
                serving = ingredient.ServingSizeCustom;
            }

            return(serving?.Unit != null);
        }
예제 #3
0
 public SelectableIngredient(BaseIngredient model)
 {
     Model = model;
 }
예제 #4
0
 private static bool TryGetServingSize(BaseIngredient ingredient, Unit unit, out IServingSize size)
 {
     size = ingredient.Servings.SingleOrDefault(s => s.Unit?.CanConvertTo(unit) ?? false);
     return(size != null);
 }