Compartilhar via


Visão geral da extensibilidade do gerador de dados

Você pode usar Visual Studio Team System Database Edition para gerar dados significativos para teste. Usando os geradores de dados incorporada, gerar dados aleatórios, gerar dados de fontes de dados existente e controlar vários aspectos da geração de dados.Se a funcionalidade dos geradores de for insuficiente, você pode criar geradores de dados personalizados.Para criar os geradores de dados personalizados, você deve usar as classes no Microsoft.VisualStudio.TeamSystem.Data.DataGenerator espaço para nome.

A extensibilidade do gerador de dados API

A API de extensibilidade fornece classes da qual os desenvolvedores podem herdar.Além das classes, a API inclui atributos que você pode aplicar às classes derivadas.Ao aplicar esses atributos, você reduz a quantidade de código necessária em geradores personalizados para os casos comuns.

Você pode usar a API de extensibilidade das maneiras a seguir quatro criar geradores de dados personalizados:

Extensibilidade

Descrição

Dificuldade em

Exemplo

Extensibilty declarativa

  • Herdar o Generator classe.

  • Adicionar entrada personalizada e propriedades de saída.

Fácil

Interna no gerador de dados inteiro.

Extensibilidade normal

Média.Esse método é recomendado na maioria dos casos.

Demonstra Passo a passo: Criando um gerador de dados personalizados

Demonstra Passo a passo: Criando um gerador de dados personalizada para um teste de verificação

Extensibilidade de agregação

  • Herdar o Generator classe.

  • Adicionar entrada personalizada e propriedades de saída.

  • Substituir um ou mais Generator métodos.

  • Na sua classe, criar uma ou mais instâncias das classes do gerador de dados padrão e usar aquelas para fazer o trabalho.

Médio

Demonstra Passo a passo: Criando um gerador de dados personalizado que agrega geradores padrão

Extensibilidade base

  • Crie uma nova classe que implemente a interface IGenerator.

  • Todos os métodos que são exigidos por seu gerador de implementar.

  • Criar um designer personalizado para o gerador implementa o IDesigner interface.

  • Implemente todos os métodos que são exigidos por seu criador.

Difícil

Nenhum

Extensibilidade de agregação

Na extensibilidade de agregação, você herdar do Generator classe sistema autônomo de costume. Em seguida, você criar uma ou mais instâncias das classes do gerador de dados padrão.Para acessar as classes padrão de gerador, você deve adicionar uma referência ao Microsoft.VisualStudio.TeamSystem.dados.Generators.dll, que pode ser encontrado no...\Arquivos de programas\Microsoft visual Studio 9.0\DBPro\Extensions.

Extensibilidade base

A API de extensibilidade base é o mecanismo pelo qual o mecanismo de geração de dados e os designers de planos de geração de dados interagem.Essa API foi desenvolvida para atender aos seguintes objetivos:

  • Robustez — para elevar uma implementação consistente e robusto em ambos os mecanismos de time de design e time de execução.

  • Flexibilidade — para oferecer suporte a geradores complexos, sistema autônomo sistema autônomo dados ligados gerador.

Uma desvantagem de design é implícita na API de extensibilidade base é que é mais complexa do que a API de extensibilidade declarativa nível mais alto.

Registrando geradores de dados personalizados

Antes de usar o gerador de dados personalizados, você deve registrá-lo em seu computador.Se você estiver fazendo seu gerador de dados personalizados a outras pessoas para usar, eles devem registrar o gerador em seus computadores.Você pode registrar dados personalizados geradores das maneiras a seguir:

Método

Permissões necessárias

Exemplo

Registre o gerador na pasta particular Assemblies.

Usuário de potência ou superior.

Como: Registrar geradores de dados personalizados

Demonstra Passo a passo: Registrando um gerador de dados personalizados

Registre o gerador de no cache global de assemblies.

Administrador

Nenhum

Crie um projeto de implantação para registrar o gerador.

Administrador

Nenhum

Geradores de dados, distribuição e designers

Você pode criar geradores de dados personalizados e designers personalizados para esses geradores.Você também pode criar distribuições personalizadas para dados numéricos geradores e designers personalizados para as distribuições.

  • Geradores de dados personalizados gerar dados aleatórios de teste de acordo com um conjunto de regras que você especificar.Você pode usar o designer do padrão com esses geradores ou você pode criar um designer personalizado para eles herdam DefaultGeneratorDesigner. Por exemplo, o gerador de dados de expressão regular é um gerador de interno, mas usa um designer personalizado para que ele possa realizar validação personalizada de entradas de usuário em time de design.

  • Usando um designer personalizado gerador, você pode personalizar propriedades como entradas e saídas são recuperados do usuário, defina valores padrão e especificar o comportamento de validação.

  • Usando uma distribuição personalizada, você pode controle a distribuição dos valores numéricos que gera um gerador de dados.

  • Designers de distribuição personalizado controlam o comportamento do time de design para uma distribuição personalizado.Esse comportamento inclui ao obter os nomes das propriedades de entrada para a distribuição, definir os valores padrão das propriedades de entrada e validar os valores das propriedades de entrada para a distribuição.

Geradores de dados e localização

Os geradores de dados incluídos no Team Edition for Database Professionals são localizadas porque Visual Studio Envia versões em vários idiomas. Você provavelmente não é necessário que localizar seus geradores de dados personalizados.Se for necessário criar um gerador de dados que será traduzido, você deve criar um designer personalizado.Você também pode substituir o GetInputs método para localizar os nomes das propriedades de entrada.

Observação:   Se possível, você deve herdar a DefaultGeneratorDesigner classe, não implementar o IDesigner interface para evitar trabalho extra.

Instanciação de gerador de dados

Geradores de dados personalizados podem compartilhar dados.O escopo dos dados compartilhados é tipo de gerador e de tabela SQL.Cada tipo de gerador possui um dicionário de ocorrência exclusivos para cada tabela do SQL.Por exemplo, um gerador de dados personalizados para uma tabela denominada Customers tem acesso a um dicionário compartilhado.Você pode colocar as informações no dicionário de e compartilhar essas informações.O dicionário é garantido para ser a mesma instância de cada tipo de gerador e tabela.Por exemplo, você pode criar um gerador de dados personalizados e solicitar o dicionário de GeneratorInit. Você pode verificar se o dicionário contém informações compartilhadas.Em caso afirmativo, você pode usar as informações para gerar dados.Você também pode criar as informações compartilhadas que Outros instâncias do seu gerador de podem usar.

Observação:

Gerador de instância é uma técnica avançada.Você pode usar o gerador de instância para criar um gerador de dados personalizados que alças de seleção restrições em colunas.Por exemplo, uma restrição de verificação que requer que uma coluna é maior do que outra coluna.

O processo de geração de dados

Geração de dados ocorre nas seguintes fases:

Determine o tipo de Designer

time de design

Essa fase requer o tipo de gerador de dados sistema autônomo entrada.O mecanismo, em seguida, pode consultar o GeneratorAttribute para recuperar o tipo do designer. Na maioria dos casos, GeneratorAttribute é herdada da classe base, que especifica o designer do padrão.

Instanciar e inicializar o Designer

time de design

O designer é instanciado.O designer é inicializado chamando Initialize e passando o tipo de gerador sistema autônomo um argumento.

Recuperar os descritores de entrada

time de design

The InputDescriptors são recuperados do designer. O designer padrão faz isso Recuperando todas as propriedades do gerador de dados que são marcadas com o InputAttribute.

conjunto os valores padrão

time de design

Os valores padrão são conjunto.

Obter descrições de saída da gerador

time de design

OutputDescriptors são recuperados do designer. O designer de padrão utiliza propriedades marcadas com OutputAttribute Para criar descrições que aparecem na Gerador de saída coluna de do Detalhes da coluna janela.

Criar uma instância do gerador

time de execução

O gerador de dados é instanciado, usando o construtor padrão.

conjunto entradas gerador

time de execução

Todos os valores de entrada são definidos no gerador de dados de descritores de entrada que são recuperados do designer.

Validar o gerador

time de execução

The ValidateInputs método é chamado. Se a validação falhar, o gerador de lançará um InputValidationException exceção. Qualquer exceção diferente de uma exceção de validação de dados é tratada sistema autônomo um erro irrecuperável.

Inicializar o gerador

time de execução

The Initialize método é chamado. Esta etapa permite que o gerador de dados executar qualquer configuração necessária antes que ocorra de geração de dados, sistema autônomo especificando a cadeia de conexão para o banco de dados de destino ou o gerador de números aleatórios de propagação.Essa fase ocorre uma vez antes de ocorre a geração de dados.

Executar a geração de dados

time de execução

Durante esta fase, novos resultados gerados por chamando o GenerateNextValues método. Os resultados podem ser recuperados usando o GetOutputValue método. Este método recupera um valor escalar o gerador corresponde à chave de saída que é passada para o gerador sistema autônomo entrada.Essa fase itera em resultados até que todos os resultados desejados foram gerados.

Limpar

time de execução

Depois que todos os dados geração estiver concluída, Dispose é chamado para limpar o gerador.

Segurança

Para obter mais informações, consulte Segurança dos geradores de dados.

Consulte também

Tarefas

Como: Criar geradores de dados personalizados

Demonstra Passo a passo: Criando um gerador de dados personalizados

Referência

Microsoft.VisualStudio.TeamSystem.Data.DataGenerator

Outros recursos

Criando geradores de dados personalizados

Explicações passo a passo de gerador de dados