Envío dos fechas por medio de una función de JavaScriptp por JQuery y el controller solo recibe un parámetro

publicado por: Anonymous

Lo que quiero hacer es un Modal donde se pueda seleccionar un rango de fechas para un reporte por medio de un Stored Procedure.

Este es mi código de JavaScript:

function Generar() {
    var Rango = { "Date": "", "Date2": "" };
    var Date = $('#Date').val();
    var Date2 = $('#Date2').val();
    var url ="@Url.Action("Reporte", "Triturations", new { Date = "param-Date",Date2 = "param-Date2"})";
    url = url.replace("param-Date", encodeURIComponent(Date))
   alert( url = url.replace("param-Date2", encodeURIComponent(Date2)));
    location.href = url;
}

Este es mi código HTML:

<label for="Date" class="col-sm-3 control-label">Fecha Inicial</label>
                <input type="datetime" id="Date" data-date-format="dd-mm-yyyy" class="form-control daterangepicker" form="modalform" placeholder="yyyy-mm-dd" />
                <label for="Date2" class="col-sm-3 control-label">Fecha Final</label>
                <input type="datetime" id="Date2" data-date-format="dd-mm-yyyy" class="form-control daterangepicker" form="modalform" placeholder="yyyy-mm-dd" />

Y este mi código C# en el Controller:

 public ActionResult Reporte(DateTime? Date,DateTime? Date2)
    {
        //var Date = form["Date"];
        //var Date2 = form["Date2"];
        //DateTime T1 = Convert.ToDateTime(Date);
        //DateTime T2 = Convert.ToDateTime(Date2);

        DateTime T1 = Date.Value;
        DateTime T2 = Date2.Value;

        MisEntities db = new MisEntities();
        var query = db.spu_rep_Trituracion(T1, T2).ToList();
        Reporte_Tri rpt = new Reporte_Tri();
        rpt.Load();
        rpt.SetDataSource(query);
        Stream s = rpt.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        return File(s, "application/pdf");

    }

solución

Date es una reservada para JavaScript, intenta ponerle otro nombre como Date1, por ejemplo.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *