Você está offline; aguardando reconexão

COMO: Criar um componente do serviço .NET no Visual C# .NET

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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 306296
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Para obter uma Microsoft Visual Basic .NET versão deste artigo, consulte 312902.
Para obter uma versão de Microsoft Visual C++ .NET deste artigo, consulte 309108.

Este artigo faz referência à seguinte espaço de nomes Microsoft .NET Framework Class Library:
  • System.EnterpriseServices

NESTA TAREFA

Sumário
Este artigo passo a passo demonstra como criar um componente .NET prestado pelo transacçõ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.

back to the top

Notas importantes

  • Componentes de serviço requerem nomes seguros.
  • Componentes de serviço devem ser registados na cache de assemblagem global (GAC) porque são recursos de nível do sistema. Aplicações de servidor requerem a instalação na GAC, mas as aplicações de biblioteca fazer não (Embora seja recomendado).
  • Pode registar componentes de serviço com + automaticamente através de registo lento ou manualmente através do utilitário regsvcs.exe. Regsvcs.exe está localizado na seguinte pasta:
    \WINNT\Microsoft.NET\Framework\ < versão do Framework >
    Para obter mais informações sobre regsvcs.exe, consulte a documentação do Microsoft .NET Framework Software Development Kit (SDK).
  • Este exemplo pressupõe que o Microsoft SQL Server tiver sido instalado no computador local.
  • Este exemplo destina-se apenas de motivos de ilustração. Estritamente geral, consulta selecção este exemplo é um bom candidato a ser executada fora de uma transacção COM + porque + utiliza o mais alto nível de isolamento para a transacção. Para melhorar o débito de base de dados, é boa prática considerar leitura consultas de níveis inferiores de transacção de programação.
back to the top

Criar o componente do serviço .NET

  1. Crie um novo projecto de biblioteca Visual C# classe denominado ServicedCOM.
  2. Mudar o nome da classe predefinida e o nome de ficheiro do Class1.cs para SimpleTrans.cs . para o fazer, siga estes passos:
    1. Na janela classe ver, clique com o botão direito do rato Aula1 e, em seguida, clique em Propriedades .
    2. Em Propriedades , altere a propriedade Name para SimpleTrans .
  3. Adicione uma referência ao espaço de nomes System.EnterpriseServices .
  4. Adicionar a seguinte instrução, como a linha superior, SimpleTrans.cs e AssemblyInfo.cs :
    using System.EnterpriseServices;
    na parte superior da SimpleTrans.cs adicione a seguinte instrução:
    using System.Data.SqlClient;
  5. Herdar da classe de ServicedComponent (nome totalmente qualificado: System.EnterpriseServices.ServicedComponent ).
  6. Adicione o seguinte código mesmo antes de * pública classe * declaração:
    [Transaction(TransactionOption.RequiresNew)]					
  7. Adicione o seguinte recomendado atributos para AssemblyInfo.cs :
    [assembly: ApplicationActivation(ActivationOption.Library)][assembly: ApplicationName("SimpleTrans")]						
    • O atributo ActivationOption indica se o componente será activado dentro de processo do emissor. Pode definir Activation.Option biblioteca ou servidor .
    • O atributo ApplicationName é o nome que aparece para a aplicação COM + no catálogo do COM + e a consola de administração de serviços de componentes.
  8. Adicionar o seguinte atributo opcional SimpleTrans.cs , apenas depois do utilizar instruções:
    [assembly: Description("Simple Transactional application to show Enterprise Services")]						
    este atributo fornece uma descrição para a aplicação COM + na consola do catálogo do COM + e administração de serviços de componentes.
  9. Adicione o seguinte método para SimpleTrans.cs :
    // Demos Explicit SetComplete/SetAbort        public string DoTrans()        {            SqlConnection	connection;            SqlCommand		command;             SqlDataReader	reader;            string		name;            string		query;		            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(Exception exc)            {                ContextUtil.SetAbort();                throw exc;            }            return name;    }// Demo implicit SetComplete/SetAbort[AutoComplete]public void DoTxAuto(){    // Do stuff}					
  10. Modificar a cadeia SqlConnection conforme apropriado para o ambiente.
back to the top

Atribuir um nome seguro de assemblagem

  1. Clique em Iniciar , aponte para programas , aponte para Microsoft Visual Studio. NET , aponte para Ferramentas do Visual Studio .NET e, em seguida, clique em Visual Studio .NET Command Prompt .
  2. Na linha de comandos, escreva sn.exe -k ServicedCOM.snk para dar a assemblagem um nome seguro.

    Para obter informações sobre assemblagens assinatura com nomes seguros, consulte a documentação do .NET Framework Software Development Kit (SDK).
  3. Copie ServicedCOM.snk para a pasta de projecto.
  4. Na AssemblyInfo.cs, substitua o código AssemblykeyFile com o seguinte código:
    [assembly: AssemblyKeyFile("..\\..\\ServicedCOM.snk")]					
back to the top

Adicionar o componente de serviço COM +

Pode permitir que o componente para registar dinamicamente quando é criada a primeira instância ou, pode registar manualmente o componente com regsvcs.exe. Para utilizar regsvcs.exe, siga estes passos:
  1. Clique em Iniciar , aponte para programas , aponte para Microsoft Visual Studio. NET , aponte para Ferramentas do Visual Studio .NET e, em seguida, clique em Visual Studio .NET Command Prompt .
  2. Na linha de comandos, escreva servicedcom.dll regsvcs . Isto cria uma aplicação de biblioteca do COM + com o mesmo nome que o nome da classe. Ignore a mensagem de aviso.
back to the top

Testar o componente

  1. No bloco de notas, abra um ficheiro de texto.
  2. Cole o código seguinte no ficheiro:
    set o =createobject("ServicedCOM.SimpleTrans")MsgBox o.DoTrans()					
  3. No menu ficheiro , clique em Guardar .
  4. Na caixa de diálogo Guardar como , na caixa de texto nome do ficheiro , escreva Test.vbs . Na lista Guardar com o tipo , clique em Todos os ficheiros e, em seguida, clique em Guardar .
  5. Faça duplo clique no ficheiro para executar o exemplo.
back to the top

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 306296 - Última Revisão: 12/06/2015 04:57:12 - Revisão: 4.1

Microsoft Enterprise Services (included with the .NET Framework) 1.0, Microsoft Visual C# .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbhowtomaster KB306296 KbMtpt
Comentários