Como criar um componente de serviço .NET no Visual Basic.NET ou Visual Basic 2005

Traduções deste artigo Traduções deste artigo
ID do artigo: 312902 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo passo a passo demonstra como criar um componente .NET de serviço que usa transações. Este artigo também demonstra como criar um cliente que testa o componente de serviço. Microsoft Enterprise Services fornece serviços de Microsoft COM + para componentes .NET.

Observações importantes

  • Use um nome forte para componentes de serviço.
  • Registrar um componentes atendidos no cache global de assemblies (GAC) porque eles são recursos do sistema. Instale aplicativos de servidor no GAC. A Microsoft recomenda que você registre os aplicativos de biblioteca no GAC, embora isso não seja um requisito.
  • Você pode usar um dos seguintes métodos para registrar os componentes de serviço com +:
    • Use o registro lento para registrar os componentes de serviço automaticamente.
    • Use o utilitário RegSvcs.exe para registrar os componentes de serviço manualmente. RegSvcs.exe está localizado na seguinte pasta:
      Framework Version \WINNT\Microsoft.NET\Framework\
      Para obter mais informações sobre RegSvcs.exe, consulte o Microsoft .NET documentação Framework Software Development Kit (SDK).
  • Instale o Microsoft SQL Server no computador local para usar o exemplo neste artigo.
  • Este exemplo é direcionado somente para fins de ilustração. Você pode usar a consulta SELECT mostrada no exemplo de fora uma transação COM + porque + usa o mais alto nível de isolamento da transação. Para melhorar a taxa de transferência do banco de dados, use uma consulta READ para níveis inferiores de transação.

Criar o componente .NET atendido

  1. Criar um novo projeto Visual Basic Class Library e denomine ServicedCOM .
  2. Renomeie a classe padrão para VBServCom .
  3. Adicione uma referência ao namespace System.EnterpriseServices .
  4. Digite ou cole o código a seguir antes da declaração de classe:
    Imports System.EnterpriseServices
    Imports System.Data.SqlClient
    					
  5. Adicione o seguinte código após a declaração de classe:
        Inherits EnterpriseServices.ServicedComponent
    					
  6. Adicione o seguinte código antes da declaração de classe (não se esqueça de caractere de continuação de linha "_"):
    <Transaction(TransactionOption.RequiresNew)> _
    					
  7. Adicione os seguintes atributos ao arquivo AssemblyInfo.vb:
    <assembly: ApplicationActivation(ActivationOption.Library)>
    <assembly: ApplicationName("SimpleTrans")>
    						
    Observações :
    • O atributo ActivationOption indica se o componente será iniciado no processo do chamador. Você pode definir Activation.Option para biblioteca ou servidor .
    • O atributo ApplicationName é o nome que aparece para o aplicativo COM + no catálogo COM + e o console de administração de serviços de componente.
  8. Adicione o atributo opcional a seguir para o AssemblyInfo.vb arquivo:
    <Assembly: Description("Simple Transactional application to show Enterprise Services")>
    						
    este atributo fornece uma descrição para o aplicativo COM + no console de administração de serviços de componente e de catálogo COM +.
  9. Adicione o seguinte método ao arquivo Class1.vb ou VBServCom.vb padrão se você renomeou o arquivo e a classe:
        ' Shows Explicit SetComplete/SetAbort.
        Public Function DoTrans() As String
            Dim connection As SqlConnection
            Dim command As SqlCommand
            Dim reader As SqlDataReader
            Dim name As String
            Dim query As String
    
            Try
                query = "SELECT au_lname, au_fname FROM authors"
                connection = New SqlConnection("data source=localhost;initial catalog = pubs;UID=sa;PWD=")
                command = New SqlCommand(query, connection)
    
                connection.Open()
                reader = command.ExecuteReader()
    
                reader.Read()
                name = reader.GetString(0) & ", " & reader.GetString(1)
            Catch exc As Exception
                ContextUtil.SetAbort()
                Throw exc
            End Try
            DoTrans = name
        End Function
    
        ' Show implicit SetComplete/SetAbort.
        <AutoComplete(True)> _
        Public Sub DoTxAuto()
            'Do stuff
        End Sub
    					
  10. Modificar a seqüência SqlConnection para seu ambiente.

Dê um nome forte ao seu assembly

  1. Clique em Iniciar , aponte para programas , aponte para Microsoft Visual Studio .NET e, em seguida, clique em Visual Studio .NET Tools para abrir um Visual Studio.NET prompt de comando.
  2. No prompt de comando, digite o seguinte comando:
    sn.exe -k ServicedCOM.snk
    Isso permite que seu assembly um nome forte.

    Para obter mais informações sobre RegSvcs.exe, consulte a documentação do Microsoft .NET Framework Software Development Kit (SDK).
  3. Copie ServicedCOM.snk para a pasta de projeto.
  4. No arquivo AssemblyInfo.vb file, substitua o código AssemblykeyFile com o código a seguir:
    <Assembly: AssemblyKeyFile("..\\..\\ServicedCOM.snk")>
    					

Adicionar o componente de serviço a COM +

Você registrar o componente dinamicamente quando a primeira instância é criada. Ou, você pode registrar manualmente o componente com RegSvcs.exe. Para usar RegSvcs.exe, execute estas etapas:
  1. Clique em Iniciar , aponte para programas , aponte para Microsoft Visual Studio .NET e, em seguida, clique em Visual Studio .NET Tools para abrir um prompt de comando .NET.
  2. No prompt de comando NET, digite servicedcom.dll regsvcs .

    Isso cria um aplicativo de biblioteca do COM + com o mesmo nome de seu nome de classe.

Testar o componente

  1. No bloco de notas, abra um arquivo de texto.
  2. Copie o código a seguir para o arquivo:
    set o =createobject("VBServCOM.VBServCOM")
    
    MsgBox o.DoTrans()
    					
  3. No menu arquivo , clique em Salvar .
  4. Na caixa nome do arquivo , digite Test.vbs . Na lista Salvar como tipo , clique em Todos os arquivos e, em seguida, clique em Salvar .
  5. Clique duas vezes o arquivo para executar a amostra.

Propriedades

ID do artigo: 312902 - Última revisão: segunda-feira, 24 de fevereiro de 2014 - Revisão: 5.5
A informação contida neste artigo aplica-se a:
  • Microsoft Enterprise Services (included with the .NET Framework) 1.0
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic 2005
Palavras-chave: 
kbnosurvey kbarchive kbmt kbhowtomaster KB312902 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: 312902

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