Software  
 
Rede de conhecimento computador >> Software >> Software de banco de dados >> Content
No Aspnet, como anexar a imagem no ImageBox do sqldatasource?
Não existe uma maneira direta de ligar uma imagem de um sqldatasource a um imagebox no Asp.net. ImageBoxes (assumindo que você quer dizer o controle `System.Windows.Forms.PictureBox`, que é para aplicativos WinForms, não os formulários da Web ASP.NET) são usados ​​em aplicativos do Windows, não aplicativos da Web. Nos formulários da Web ASP.NET, você usaria um controle `ASP:Image`.

Veja como você faria isso nos formulários da web asp.net usando um `ASP:Image` Control e um sqldatasource:

1. Configuração do banco de dados:

Verifique se o seu banco de dados SQL possui uma tabela com uma coluna armazenando os dados da imagem (geralmente como `varbinária (max)`). Você também precisará de colunas para identificar a imagem (por exemplo, um ID).

2. Página da Web ASP.NET (.aspx):

`` `ASPX
<%@ Page Language ="C#" AutoEventWireUp ="True" CodeBehind ="Younspage.aspx.cs" herits ="yourproject.yourpage" %>





imagem de sqldatasource



ConnectionString ="<%$ Connectionstrings:YourConnectionString %>"
SelectCommand ="Selecione IMAGEDATA, ImageId de YourMagetable WHERE ImageId =@ImageId">












`` `

3. Código-behind (.aspx.cs):

`` `csharp
usando o sistema;
usando System.data;
usando System.io;

namespace seu projeto
{
Classe Parcial Pública YourPage:System.Web.ui.Page
{
Void Page_load protegido (remetente de objeto, EventArgs e)
{
if (! ispostback)
{
tentar
{
if (request.QueryString ["imageId"]! =null)
{
int imageId =int.parse (request.QueryString ["imageId"]);
DatAtable dt =sqldataSource1.select (DataSourceSelecTargudents.Empty) como datatable;

if (dt! =null &&dt.rows.count> 0)
{
byte [] imageBytes =(byte []) dt.Rows [0] ["Imagemataata"];
if (imageBytes! =null &&imagebytes.length> 0)
{
Usando (MemoryStream ms =new MemoryStream (ImageBytes))
{
Image1.ImageUrl ="Data:Image/JPEG; Base64," + Convert.Tobase64String (ImageBytes); // ajuste 'imagem/jpeg' se necessário
}
}
}
outro
{
lblerror.Text ="Imagem não encontrada";
}
}
outro
{
lblerror.Text ="ID da imagem não fornecida.";
}
}
Catch (Exceção Ex)
{
lblerror.text ="Erro carregando imagem:" + ex.Message;
}
}
}
}
}
`` `

Explicação:

* `sqldataSource`: Isso busca os dados da imagem do banco de dados com base na `imageId` passada na sequência de consultas. Substitua `" YourConnectionString "` pelo nome da string de conexão real do seu `web.config`. Substitua `" yourimageTable "` pelo nome da tabela. Ajuste o `selectCommand` se a estrutura da sua tabela for diferente.
* `ASP:Image`: Este controle exibe a imagem.
* código-behind: O código recupera os dados da imagem da `sqldataSource`, converte -os em uma string base64 e o define como o` imageurl` do controle `asp:image`. O manuseio de erros está incluído. Os `dados:imagem/jpeg; base64,` parte é crucial; Ele diz ao navegador que os dados são uma imagem JPEG codificada por Base64. Alterar `imagem/jpeg` para o tipo MIME apropriado se suas imagens estiverem em um formato diferente (por exemplo,` imagem/png`, `imagem/gif`).
* Manuseio de erro: O bloco `Try-Catch` lida com possíveis exceções durante o acesso ao banco de dados ou processamento de imagem. As mensagens de erro são exibidas no rótulo `lblerror`.
* string de consulta: O código espera que um `imageId` seja passado na sequência de consulta do URL (por exemplo,` yourpage.aspx? ImageId =1`).


Lembre -se de substituir os espaços reservados como `" yourConnectionString "` e `" yourimagetable "` com seus valores reais. Este exemplo abrangente aborda o manuseio de erros e fornece uma solução mais robusta. Além disso, considere adicionar manuseio de erros mais sofisticado e validação de entrada em um ambiente de produção.

Anterior :

Próximo :
  Os artigos relacionados
·Quanto tempo leva para se tornar um administrador de ba…
·Como manter Access 2007 em uma página 
·Como recuperar um SQL 2005 Express senha 
·Desvantagens do computadorizada Software de Gestão de …
·O que são imagens Vinculadas & Unbound 
·Certificação MS Access 
·Como calcular o tamanho de uma tabela no Oracle 
·Em qual banco de dados caminhos são aplicações impor…
·Como Salvar a consulta no Access 2003 
·Ferramentas Remote Administrator 
  Artigos em destaque
·Como adicionar uma linha a DataTable 
·Como adicionar um vídeo a um slide do Microsoft Office…
·No Excel, onde você encontra formatação condicional?…
·O Instagram é ruim para algumas crianças? 
·O que é um arquivo suave? 
·Se uma célula contém dados incorretos, como isso pode…
·Processamento de texto em um Mac 
·Qual é a diferença entre atribuir e publicar? 
·Qual é a extensão de arquivo Dtf 
·Como substituir retornos de carro no WordPad 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados