public async Task <IActionResult> GetMenu(int menuItemId)
        {
            var expr = from getMenuItem in RestaurantDomain.GetMenuItemById(menuItemId)
                       select getMenuItem;

            var exprResult = await interpreter.Interpret(expr, Unit.Default);

            return(await exprResult.MatchAsync <IActionResult>(
                       async (selected) =>  // Menu Item was successfully selected
            {
                return (IActionResult)Ok(selected.MenuItemAgg.MenuItem);
            },
                       async (notSelected) =>  // Menu Item not selected
            {
                return NotFound();
            }

                       ));
        }