none
Capturar retorno de método pelo FormView RRS feed

  • Pergunta

  • Saudações!

    Estou utilizando objectDatasouce e FormView. Gostaria de capturar e exibir o retorno dos médotos de insert, update e delete, ao executar os respctivos comandos no formview.

    Abaixo esta o metodo excluir, que retorno uma string, com a mensagem de sucesso ou de erro na opepação. Gostaria de exibir este retorno em tela para que o usuário tenha o feedback da operação.

            public String excluir(Transportadora transp)
            {
                String retonro = String.Empty;
                int afetados = 0;
               
                String sql_delete = "delete from transportadoras where (codtransportadora = @codtransportadora)";
                try
                {
                    banco.abrirConexao();

                    banco.parametros_Limpar();

                    banco.parametros_Incluir("@codtransportadora", TipoCampo.Numero, transp.id_transportadora.ToString());

                    afetados = banco.Executar(sql_delete, CommandType.Text);

                    if (afetados >= 0)
                        retorno = "Operação realizada com sucesso";
                    else
                        retorno = "Erro: Operação não realizada!";

                }
                catch (Exception e)
                {
                    retorno = e.Message.ToString();
                    banco.fecharConexao();
                }
                finally
                {
                    banco.fecharConexao();
                }

                return retorno;
            }

    Grato,

    quinta-feira, 26 de abril de 2012 14:18

Respostas

  • Para visualizar/utilizar os eventos:

    Clique com o botão direito em cima do ObjectDataSource > Propriedades:


    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    • Marcado como Resposta Jousival sábado, 28 de abril de 2012 12:16
    quinta-feira, 26 de abril de 2012 15:45

Todas as Respostas

  • Olá,

    Pelo que entendi você simplesmente precisa exibir a mensagem que retorna da String do método excluir().

    Exiba uma MsgBox

    System.Windows.Forms.MessageBox.Show(retorno, "Alerta do Sistema", System.Windows.Forms.MessageBoxButtons.Ok);

    Ou coloque a mensagem numa label:

    LabelInfo.Text = "Atenção: " + retorno;

    Boa sorte.


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"


    quinta-feira, 26 de abril de 2012 15:36
  • Colega,

    Manipule os eventos do seu ObjectDataSource.

    Um exemplo no caso de um cadastro que retorna uma string:

    ** Método que retorna uma string:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    namespace Web.Teste.Repositorio
    {
        public class Usuario
        {        
            public int Codigo { get; set; }
            public string Nome { get; set; }
            public string Email { get; set; }
    
            public Usuario()
            {
                //
            }
    
            public string Inserir(Usuario usuario)
            {
                //validações etc...
                if (usuario == null)
                    return "Objeto null";
                else
                    return "Operação realizada com sucesso";           
            }
        }
    }

    Depois das configurações no FormView (indicando o método de Insert, Delete etc), alterei o DefaultMode do FormView para Insert. Após isto usei o evento Inserted do ObjectDataSource para pegar o retorno do método. Veja:

    protected void ObjectDataSource1_Inserted(object sender, ObjectDataSourceStatusEventArgs e)
    {
        string retorno = e.ReturnValue.ToString();
    }
    Tela de inserção simples:



    Capturando o retorno do método Inserir:



    No seu caso acho que vai ser usado o evento Deleted. Se não é o Deleting. Testa aí.


    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    quinta-feira, 26 de abril de 2012 15:41
  • Para visualizar/utilizar os eventos:

    Clique com o botão direito em cima do ObjectDataSource > Propriedades:


    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    quinta-feira, 26 de abril de 2012 15:45
  • Para visualizar/utilizar os eventos:

    Clique com o botão direito em cima do ObjectDataSource > Propriedades:


    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    • Marcado como Resposta Jousival sábado, 28 de abril de 2012 12:16
    quinta-feira, 26 de abril de 2012 15:45
  • Paulo,

    Muito obrigado pela resposta.

    sábado, 28 de abril de 2012 12:17