COMO: Enviar e receber documentos binários por meio de um ASP.NET translation from VPE for Csharp Visual e o serviço .NET

Traduções deste artigo Traduções deste artigo
ID do artigo: 318425 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo passo a passo mostra como criar um serviço da Web e um cliente de serviço da Web para enviar e receber documentos binários usando o Microsoft ASP.NET e o Microsoft Visual translation from VPE for Csharp .NET. Você pode usar o ASP.NET e .NET translation from VPE for Csharp Visual para criar um serviço da Web que salva documentos binários em uma pasta em um servidor Web e recupera documentos binários de uma pasta em um servidor Web. Você pode usar esse serviço como um sistema simples de gerenciamento de documentos na Web.

Criar o serviço da Web

  1. No menu arquivo no Microsoft Visual Studio. NET, clique em novo e, em seguida, clique em Project .
  2. Em projetos do Visual translation from VPE for Csharp , selecione o Serviço da Web ASP.NET . Digite ou cole http://localhost/DocumentManagementService para o local e, em seguida, clique em OK . Por padrão, Service1.asmx é criado e é exibido no modo de design.
  3. No menu Exibir , clique em código para o modo de exibição código para Service1.asmx.
  4. Adicione o seguinte código WebMethods para a classe Service1 :
    
    [WebMethod]
    public bool SaveDocument( Byte[] docbinaryarray, string docname)
    {
    	string strdocPath;
    	strdocPath = "C:\\DocumentDirectory\\" + docname;
    	FileStream objfilestream =new FileStream(strdocPath,FileMode.Create,FileAccess.ReadWrite);
    	objfilestream.Write(docbinaryarray,0,docbinaryarray.Length);
    	objfilestream.Close();
    
    	return true;
    }
    
    [WebMethod]
    public int GetDocumentLen(string DocumentName)
    {
    	string strdocPath;
    	strdocPath = "C:\\DocumentDirectory\\" + DocumentName;
    
    	FileStream objfilestream = new FileStream(strdocPath,FileMode.Open,FileAccess.Read);
    	int len = (int)objfilestream.Length;			
    	objfilestream.Close();
    
    	return len;
    } 
    
    
    [WebMethod]
    public Byte[] GetDocument(string DocumentName)
    {
    	string strdocPath;
    	strdocPath = "C:\\DocumentDirectory\\" + DocumentName;
    
    	FileStream objfilestream = new FileStream(strdocPath,FileMode.Open,FileAccess.Read);
    	int len = (int)objfilestream.Length;			
    	Byte[] documentcontents  = new Byte[len];
    	objfilestream.Read(documentcontents,0,len);
    	objfilestream.Close();
    
    	return documentcontents;	
    } 
    					

    Observação: <root>O código salva os documentos para o <raiz>: \\DocumentDirectory\\ caminho do diretório no servidor. Altere isso para a pasta em seu servidor Web onde você deseja salvar os documentos.

  5. Adicione o seguinte namespace para o início do Service1.asmx:
    using System.IO;
  6. Teste o serviço da Web:
    1. No menu Debug , clique em Iniciar para iniciar o serviço da Web. Isso inicia o navegador da Web e página de Ajuda da descrição do serviço será exibido.
    2. Certifique-se que os métodos SaveDocument , GetDocument e GetDocumentLen aparecem.
    3. Feche a janela do navegador da Web para parar a depuração.

Criar um cliente para o serviço da Web

  1. No menu arquivo no Visual Studio. NET, clique em Add Project e, em seguida, clique New Project .
  2. Na lista projetos translation from VPE for Csharp Visual , selecione Windows Application e, em seguida, clique em OK . Por padrão, é criado o Form1.
  3. Adicione uma referência da Web para o serviço da Web, da seguinte maneira:
    1. No Solution Explorer, clique com o botão direito do mouse no item de projeto cliente. Em seguida, selecione Add Web Reference no menu de contexto .
    2. Na caixa de diálogo Add Web Reference , digite a URL para o arquivo WSDL (Web Services Description Language) para o serviço da Web e, em seguida, pressione ENTER.

      Observação: O local padrão para o arquivo WSDL é http://localhost/DocumentManagementService/Service1.asmx?WSDL.
    3. Na caixa de diálogo Add Web Reference , clique em Add Reference .
  4. Adicione dois botões ao Form1. Defina a propriedade Text de button1 para Armazenamento de documentos no servidor . Defina a propriedade Text de button2 para Recuperar o documento do servidor .
  5. Clique duas vezes em button1 e button2 para criar padrão clique manipuladores de eventos para os botões.
  6. Substituir os manipuladores com o seguinte código:
    string sFile = "<file path>";
    
    private void button1_Click(object sender, System.EventArgs e)
    {
    	FileStream objfilestream = new FileStream(sFile,FileMode.Open,FileAccess.Read);
    	int len = (int)objfilestream.Length;
    	Byte[] mybytearray = new Byte[len];
    	objfilestream.Read(mybytearray,0,len);
    	localhost.Service1 myservice = new localhost.Service1();
    	myservice.SaveDocument(mybytearray,sFile.Remove(0,sFile.LastIndexOf("\\")+1));
    	objfilestream.Close();
    }
    
    private void button2_Click(object sender, System.EventArgs e)
    {
    	MemoryStream objstreaminput = new MemoryStream();
    	FileStream objfilestream = new FileStream(sFile.Insert(sFile.LastIndexOf("."),"2"), FileMode.Create,FileAccess.ReadWrite);
    						
    	localhost.Service1 myservice = new localhost.Service1();
    	int len = (int)myservice.GetDocumentLen(sFile.Remove(0,sFile.LastIndexOf("\\")+1)); 
    	Byte[] mybytearray = new Byte[len];
    	mybytearray = myservice.GetDocument(sFile.Remove(0,sFile.LastIndexOf("\\")+1));
    	objfilestream.Write(mybytearray,0,len);
    	objfilestream.Close();
    }
    					
    Observação: a variável sFile deve conter o caminho de arquivo local para um documento que será carregado para o servidor. Quando o documento é baixado, ele é colocado na mesma pasta e um valor de 2 é acrescentado ao nome arquivo.

  7. Adicione o seguinte espaço para nome no início do arquivo:
    using System.IO;
  8. No Solution Explorer, clique com o botão direito do mouse no item de projeto cliente. Em seguida, selecione Definir como projeto de inicialização no menu de contexto .

Experimente IT

  1. No menu Debug , clique em Iniciar . Form1 é exibida.
  2. Clique no botão rotulado como Documento de armazenamento no servidor . Isso irá chamar o método de Web SaveDocument . <root>Esse método da Web salva o documento local no <raiz>: \DocumentDirectory\ pasta no servidor. Depois de transferir o documento, verifique se o arquivo existe na pasta de destino.
  3. Clique no botão rotulado como Recuperar o documento do servidor . Isso irá chamar o método de Web GetDocument . <root>Esse método Web recupera o documento o <raiz>: \DocumentDirectory\ pasta no servidor. O documento é salvo na unidade local que está especificada no código.

Referências

Para obter mais informações, consulte a documentação do Microsoft Visual Studio .NET.

Propriedades

ID do artigo: 318425 - Última revisão: segunda-feira, 15 de dezembro de 2003 - Revisão: 4.2
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
Palavras-chave: 
kbmt kbhowtomaster KB318425 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 318425

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com