none
Passar parametros do controller para página aspx. RRS feed

  • Pergunta

  • Boa tarde, pessoal.

       Por favor, preciso de uma ajuda. Estou desenvolvendo meu primeiro projeto no padrão MVC, precisei de uma página aspx para lidar com crystal reports. Preciso passar parametros para o report e não consigo tentei assim:

    Controller:

    public ActionResult Report()
            {
     
                this.HttpContext.Session["Texto"] = "Testando Session";
                Response.Redirect("~/AspNetForms/WebForm2.aspx");
                return View();
                          
           }
    

    na página aspx:

     protected void Page_Load(object sender, EventArgs e)
            {
    
                //Classe para testar o report
                Produto prod = new Produto();
                prod.DESC_PRODUTO = (string)System.Web.HttpContext.Current.Session["Texto"].ToString(); ;
                prod.PRECO = 999.90;
                prod.DTAINICIOPROM = "11/01/2016";
                prod.DTAFIMPROM = "11/01/2016";
                List<Produto> lista = new List<Produto>();
                lista.Add(prod);
    
               
                CrystalDecisions.CrystalReports.Engine.ReportDocument reportDocumento =
                    new CrystalDecisions.CrystalReports.Engine.ReportDocument();
                reportDocumento.Load(Server.MapPath("~/Reports/" + "A3HorizontalDouble" + ".rpt"), OpenReportMethod.OpenReportByTempCopy);
               
    
                reportDocumento.SetDataSource(lista);
                reportDocumento.SetParameterValue("fontDescription", ConfigurationManager.AppSettings["fontDescription"].ToString());
                reportDocumento.SetParameterValue("fontPrice", ConfigurationManager.AppSettings["fontPrice"].ToString());
    
                CrView.ReportSource = reportDocumento;
            }

    Galera sou um simples aspirante, já brincava com vc e c# para windowsforms, estou apanhado muito em Web mas vou conseguir aprender :)

    Obrigado.


    responderam.

    sábado, 25 de junho de 2016 21:31

Respostas

Todas as Respostas

  • Boa tarde Gabriel.Rocha,

    Obrigado pela sua participação no Fórum MSDN.

    Para passar dados do Controller para o View você pode utilizar o ViewBag:

    ViewBag, pass data from Controller to View

    ViewBag, utilizada para persistir dados entre a Controller e a View

    Atenciosamente.


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Marcado como Resposta Thales F Quintas terça-feira, 28 de junho de 2016 12:17
    segunda-feira, 27 de junho de 2016 18:31
    Moderador
  • Gabriel,

    Segue um exemplo de como usar Crystal e ASP.NET MVC:

    https://aircord.wordpress.com/2010/11/13/relatorios-em-asp-net-mvc-com-crystal-reports/

    Se preferir, tem um vídeo no youtube.

    https://www.youtube.com/watch?v=7yLHhsTjK68


    Att,
    Leandro

    Se foi útil, marque como útil ou como resposta.

    segunda-feira, 27 de junho de 2016 19:00
  • Boa noite,

    Outra opção seria você passar parâmetros na URL. Exemplo:
    Na Controller:

    Response.Redirect("~/WebForm2.aspx?DescProd=testes");

    Na página aspx:

    string descricao = Request.QueryString["DescProd"];

    Você pode passar diversos parâmetros e pode ainda criptografar os parâmetros por questão de segurança.

    Espero ter ajudado.

    Att,


    Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.

    • Marcado como Resposta Thales F Quintas terça-feira, 28 de junho de 2016 12:17
    • Não Marcado como Resposta Gabriel.Rocha terça-feira, 28 de junho de 2016 14:24
    terça-feira, 28 de junho de 2016 01:32