public IHttpActionResult Get(int id)
        {
            ListaMenuDetalleResponse objresponse = new ListaMenuDetalleResponse();

            objresponse.status = new ProcesoResponse();
            objresponse.Hits   = new List <Dominio.MenuDetalle>();



            try
            {
                var query = from md in BD.t_menudetalle
                            join p in BD.t_producto on md.prod_id equals p.prod_id
                            where md.menu_id == id
                            select new
                {
                    md.mede_id,
                    md.mede_disponible,
                    md.mede_precio,
                    md.menu_id,
                    md.prod_id,
                    p.prod_nombre,
                    p.prod_precio
                };


                foreach (var item in query)
                {
                    objresponse.Hits.Add(new Dominio.MenuDetalle()
                    {
                        mede_disponible = item.mede_disponible,
                        mede_id         = item.mede_id,
                        mede_precio     = item.mede_precio,
                        menu_id         = item.menu_id,
                        prod_id         = item.prod_id,
                        pro_descripcion = item.prod_nombre
                    });
                }

                objresponse.totalregistros = query.Count();
                objresponse.status.estado  = 0;
                objresponse.status.mensaje = "Info de menu";
            }
            catch (Exception err)
            {
                objresponse.status.estado  = -1;
                objresponse.status.mensaje = err.Message;
                throw err;
            }

            return(Ok(objresponse));
        }
        public ListaMenuDetalleResponse ListarMenuDetalle(ListarMenuDetalleRequest request)
        {
            ListaMenuDetalleResponse response = new ListaMenuDetalleResponse();

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(ServicioCommon.Parametros.URLServicio);
                var responseTask = client.GetAsync("api/MenuDetalle/" + request.CodigoMenu);
                responseTask.Wait();
                var result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var colaboradorResponse = result.Content.ReadAsStringAsync().Result;
                    response = JsonConvert.DeserializeObject <ListaMenuDetalleResponse>(colaboradorResponse);
                }
            }

            return(response);
        }
        public JsonResult LitaMenuDetalle(FormCollection frm)
        {
            string iDisplayLength = HttpContext.Request.Form["iDisplayLength"];
            string iDisplayStart  = HttpContext.Request.Form["iDisplayStart"];
            string sEcho          = HttpContext.Request.Form["sEcho"];
            string sData          = HttpContext.Request.Form["sData"];

            ResponseOperacionBE o_ResponseOperacion = new ResponseOperacionBE();

            o_ResponseOperacion.OperacionType = new OperacionType();
            o_ResponseOperacion.OperacionType.codigo_operacion  = "LISTAR_MENU_DETALLE";
            o_ResponseOperacion.OperacionType.nombre_operacion  = "Listar menu detalle";
            o_ResponseOperacion.OperacionType.mensaje_operacion = "Listado con éxito";
            o_ResponseOperacion.OperacionType.estado_operacion  = "0";

            RequestOperacionBE Request = new RequestOperacionBE();

            Request = new JavaScriptSerializer().Deserialize <RequestOperacionBE>(sData);
            Request.DataTableRquest = new DataTableRequest();

            Request.DataTableRquest.iDisplayLength = Convert.ToInt32(iDisplayLength);
            Request.DataTableRquest.iDisplayStart  = Convert.ToInt32(iDisplayStart);
            Request.DataTableRquest.sEcho          = sEcho;


            DataTableResponse ResponseOperacion = new DataTableResponse();
            int nIdIniComp = Request.DataTableRquest.iDisplayStart;
            int nIdFinComp = Request.DataTableRquest.iDisplayLength;

            nIdFinComp = nIdIniComp + nIdFinComp;
            nIdIniComp = nIdIniComp + 1;

            try
            {
                var deserailizar = new JsonSerializerSettings();
                deserailizar.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat;

                deserailizar.Culture = System.Threading.Thread.CurrentThread.CurrentCulture;
                var parameter = Newtonsoft.Json.JsonConvert.DeserializeObject <ListarMenuDetalleRequest>(Request.OperacionType.Objeto1.ToString(), deserailizar);

                parameter.prm_reginicio = nIdIniComp;
                parameter.prm_regfin    = nIdFinComp;



                ProxyApiRestaurante proxyRestauramte = new ProxyApiRestaurante();

                ListaMenuDetalleResponse result = proxyRestauramte.ListarMenuDetalle(parameter);



                ResponseOperacion.aaData               = result.Hits;
                ResponseOperacion.iTotalRecords        = Request.DataTableRquest.iDisplayLength;
                ResponseOperacion.iTotalDisplayRecords = result.totalregistros;
                ResponseOperacion.sEcho = Request.DataTableRquest.sEcho;

                o_ResponseOperacion.DataTableResponse = ResponseOperacion;
            }
            catch (Exception err)
            {
                o_ResponseOperacion.OperacionType.mensaje_operacion = err.Message;
                o_ResponseOperacion.OperacionType.estado_operacion  = "-1";
            }

            var jsonResult = new JsonResult {
                JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

            jsonResult.Data = o_ResponseOperacion;
            return(jsonResult);
        }