Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

jalberromano1980

Conversão em array bits

Recommended Posts

Pessoal, tenho uma tabela no Sqlserver no qual tenho um atributo imagem_questao com formato bit.

Preciso converter uma imagem em formato bit[].... Nw encontrei essa opção no c#.... consegui converter para byte[] assim:

 

 

                 string NomeArquivo = openFileDialog1.FileName;
                 Bitmap bmp = new Bitmap(NomeArquivo);
                 pcbImagem.Image = bmp;

                 MemoryStream ms = new MemoryStream();
                 bmp.Save(ms, ImageFormat.Bmp);
                 byte[] foto = ms.ToArray();
                 Imagem = foto;

 

 

como converto para bit[]?

Obrigado :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria guardar a imagem no formato bit no sqlserver.... eh que nw estou usando sqlparammters para inserir no banco... ele converte para string e manda para o banco.... por isso preciso que seja binario para dar certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não existe bit[], todas as imagens e tipos de arquivos são gravados no SQLServer como BLOB(Ou Varbinary) que não passa de um array de bytes (Byte[]). Existem alguns tópicos bem recentes aqui no fórum com a resolução para seu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Klaus.. Já olhei acho que todos... Mas no meu caso preciso de uma solução diferente. Nw estou conseguindo gravar uma imagem convertida para byte[], mas nw deu certo. Ai me recomendaram converter para bit[] mas pelo visto nw existe isso.

 

é que tenho um metodo que insere no sql server, mas antes de inserir ele converte para string, e quando ele vai fazer essa conversão ele nw consegue e nw da certo inserir no banco a imagem.

 

Para que desse certo, eu teria que mudar o processo de parametrização desse metodo. Ja tentei algums formas de parametrização que vi na net, mas dava erro pois ele nw conseguia preencher os parametros corretamente e gravava no banco com @nome, @data....

 

Acho que teria que mudar essa parametrização.. alguém poderia me dar uma sugestão que possa funcionar?

 

 

Seque o método de inserção que falei:

 

public override void InserirRegistros(Modelagem.AlternativasQuestoes InserirRegistros)

        {

            try

            {

                StringBuilder insert = new StringBuilder();





                insert.AppendLine("INSERT INTO AlternativasQuestoes (cod_questao, ordem_sequencial, marcador_alternativa, resposta_alternativa, texto_alternativa, complemento_resposta)");

                insert.AppendLine(" VALUES ('" + InserirRegistros.CodigoQuestao + "','" + InserirRegistros.OrdemSequencial + "', '" + InserirRegistros.MarcadorAlternativa + "', '" + InserirRegistros.RespostaAlternativa + "', '" + InserirRegistros.TextoAlternativa + "', '" + InserirRegistros.ComplementoResposta + "')");



                conexao.AbrirConexao();
                conexao.ExecutarComandoExecuteNonQuery(insert.ToString());


                conexao.FecharConexao();
                MessageBox.Show("Registro inserido no banco de dados!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);


            }
            catch (Exception)
            {
                MessageBox.Show("Erro ao inserir registro no banco de dados!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.