none
Salvar foto no banco de dados c# RRS feed

  • Discussão Geral

  • Pessoal,

    tenho um pictureBox que capturo a foto da webCam. Tenho que salvar esta foto com os demais dados no banco. Estou utilizando esses métodos:

    public void Incluir(ModeloFamiliar modelo)
    
    {
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conexao.ObjetoConexao;
                cmd.CommandText = "INSERT INTO tbfamiliar(f_fotoFamiliar) VALUES (@f_fotoFamiliar) SELECT @@IDENTITY;";
    
                conexao.Conectar();
                modelo.F_Cod = Convert.ToInt32(cmd.ExecuteScalar());
                conexao.Desconectar();
     }
    public class ModeloFamiliar
        {
            private  Byte f_fotoFamiliar;
            public Byte F_FotoFamiliar
            {
                get { return this.f_fotoFamiliar; }
                set { this.f_fotoFamiliar = value; }
            }
        }
    private void btnSalvar_Click(object sender, EventArgs e)
            {
    
                    try
                    {
    
                        //leitura dos dados
                        ModeloFamiliar modelo = new ModeloFamiliar();
                       modelo.F_FotoFamiliar = Convert.ToByte(FotoFamiliar.Image);
    
                        //objeto para gravar dados no banco
                        DALConexao cx = new DALConexao(DadosDaConexao.StringDeConexao);
                        BLLFamiliar bll = new BLLFamiliar(cx);
    
                        this.FocaCampos();
    
                        if (this.operacao == "inserir")
                        {
                            //cadastra um familiar
                            bll.Incluir(modelo);
                            MessageBox.Show("Cadastro efetuado com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
    
                        }
                        else
                        {
                            //altera um familiar
                            modelo.F_Cod = Convert.ToInt32(txtCodigo.Text);
                            bll.Alterar(modelo);
                            MessageBox.Show("Dados do familiar alterado com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                        this.LimpaTela();
                        this.alteraBotoes(1);
                    }
                    catch (Exception erro)
                    {
                        MessageBox.Show(erro.Message);
                    }
                }
            }

    Ao acionar o evento para salvar, é exibido esta mensagem de erro:


    Poderiam me ajudar a resolver esta situação? Agradeço a todos.


    kildare

    segunda-feira, 25 de setembro de 2017 00:43

Todas as Respostas

  • Boa tarde,

    Faltou passar o parâmetro (foto) para salvar (command).

    Ficaria algo parecido com:

    cmd.CommandText = "INSERT INTO tbfamiliar(f_fotoFamiliar) VALUES (@f_fotoFamiliar);";
    cmd.Parameters.Add("@f_fotoFamiliar", SqlDbType.VarBinary, 8000).Value = modelo.F_FotoFamiliar;
    cmd.ExecuteNonQuery();

    Espero ter ajudado.

    Att,


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

    quinta-feira, 28 de setembro de 2017 17:07
  • Ola KjGomes, qual a mensagem de erro que está aparecendo?

    Leandro de Agostini MCTS - Web Application, Framework 4

    segunda-feira, 9 de outubro de 2017 13:44