Olá... Estou montando uma API e em minha model existe uma propriedade Image, e preciso salvar esta imagem no banco... Como fazer o envio da imagem baseado na forma de implementação apresentada no curso?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá... Estou montando uma API e em minha model existe uma propriedade Image, e preciso salvar esta imagem no banco... Como fazer o envio da imagem baseado na forma de implementação apresentada no curso?
Olá, Eduardo!
Recomendo ler esse artigo sobre o recurso do FileStream do Sql Server 2008:
https://msdn.microsoft.com/pt-br/library/cc716724.aspx?f=255&MSPPError=-2147217396
Resumindo, com o atributo FILESTREAM o Sql Server garante que os dados da imagem sejam gravados em arquivo, e não no banco de dados relacional, e você ainda ganha a integração do backup, que abrange também os dados de FileStream gravados em sistema de arquivos.
Boa sorte e boas aulas!
Prezado Marcelo. Primeiramente, agradeço sua ajuda!
Na verdade, estou desenvolvendo um protótipo da API para empresa que trabalho, e realmente a Imagem faz parte da minha entidade. Esta API será utilizada por nossos clientes para fazer processos de POST, PUT e DELETE em nosso banco...
Então imagine que nosso cliente quer cadastrar uma Pessoa, ele irá consumir a API utilizando POST e passando preferencialmente XML as propriedades a serem gravadas, uma delas é uma FOTO (campo Image no banco e Byte[] na Model)...
Além disso, nosso software pode trabalhar tanto com SQL Server quanto com Oracle, sendo assim, tenho uma classe que de acordo com a configuração faz os CRUDS de acordo com o tipo de banco...
Desde já agradeço...
Oi Eduardo!
salvar imagens no banco de dados é uma má prática e tem diversas desvantagens, dentre elas, tem todo um overhead de processamento toda vez que você for salvar ou recuperar uma imagem para fazer a serialização e deserialização do arquivo.
o boa prática é você salvar essa imagem em alguma pasta do sistema e armazernar no banco de dados apenas o caminho dela. A biblioteca que o marcelo te indicou deve te ajudar a fazer isso
abraço!
Prezado Philippe,
Obrigado por sua resposta... Entendo as vantagens e desvantagens tanto de uma abordagem como da outra...
Apesar de não ser uma boa prática, REALMENTE preciso ter este entendimento, se é possível enviar a imagem ou não pela API...
Temos uma necessidade que é desta forma e preciso atender ao requisito!!!
Grato