Compartir a través de


Consideraciones acerca de los generadores de datos personalizados

Actualización: noviembre 2007

Para extender las funciones de generación de datos de Visual Studio Team System Database, puede crear generadores de datos personalizados o extender los generadores de datos estándar. Si tiene una regla de negocios que los generadores de datos estándar no satisfacen, puede crear un generador de datos personalizado. Para obtener más información, vea Descripción general de la generación de datos. Antes de crear un generador de datos personalizado, debe tener en cuenta las cuestiones siguientes.

Nombre del generador de datos

Cuando se crea un generador de datos personalizado, es posible controlar el nombre que aparece en la interfaz de usuario para ese generador de datos personalizado. Debería evitar asignar el mismo nombre a distintos generadores de los datos para que los usuarios puedan distinguirlos fácilmente.

Asignación del nombre cuando se utiliza la API declarativa

Si no declara un diseñador para utilizarlo con el generador de datos personalizado, el nombre de la clase del generador de datos aparece como el nombre para mostrar cuando se crea DefaultDistributionDesigner. Puede aplicar el atributo siguiente a la clase del generador de datos personalizado para especificar el nombre que aparecerá en la interfaz de usuario para el generador de datos personalizado:

[System.ComponentModel.DisplayName("YourGeneratorName")]

Asignación del nombre cuando se utiliza la API base

Si crea un diseñador personalizado, el valor devuelto por la propiedad [Name] del diseñador aparece en la interfaz de usuario para el generador de datos personalizado. Si deriva el diseñador personalizado de DefaultDistributionDesigner, se utiliza el atributo DisplayName. Si, en su lugar, lo deriva de IGeneratorDesigner, se omite el atributo DisplayName. Para especificar el atributo DisplayName para el generador de datos, debe agregar el atributo siguiente:

 [System.ComponentModel.DisplayName("YourGeneratorName")]

Especificar un generador de datos personalizado como generador de datos predeterminado para un tipo de datos de SQL

Es posible designar un generador de datos personalizado como generador de datos predeterminado para un tipo de datos de SQL, pero existen algunas restricciones.

  • Puede asignar un generador de datos personalizado a cualquier tipo de datos de SQL que no pueda tener una restricción UNIQUE. Por ejemplo, puede asignar un generador de datos personalizado al tipo de datos Image.

  • Puede asignar un generador de datos personalizado que no tenga ningún atributo de filtro a cualquier tipo de datos de SQL.

  • Puede asignar un generador de datos personalizado que tenga un atributo de filtro a un tipo de datos de SQL que sólo pueda tener una restricción UNIQUE si el generador de datos personalizado puede generar valores únicos. Para designar este tipo de generador, aplique el atributo siguiente a la clase de generador de datos personalizado:

    <GeneratorStyles(DesignerStyles:=GeneratorDesignerStyles.CanProduceUniqueValues)> _
    Public Class TestGenerator
        Inherits Generator
    
    End Class
    
    [GeneratorStyles(DesignerStyles = GeneratorDesignerStyles.CanProduceUniqueValues)]
    public class TestGenerator:Generator
    {
    }
    

Diseñadores personalizados

De forma predeterminada, los generadores de datos personalizados utilizan el diseñador predeterminado. Si desea utilizar un diseñador personalizado con su generador de datos personalizado, debe especificar un atributo adicional en la clase de generador de datos personalizado:

<Generator(GetType(CustomDesignerType))> _
Public Class TestGenerator
    Inherits Generator

End Class

[Generator(typeof(CustomDesignerType))]
public class TestGenerator:Generator
{
}

Propiedades de entrada autoasignadas

Si marca una o más propiedades de entrada para su generador de datos personalizado con el atributo AutoAssignedInput, también debe definir esas propiedades como de sólo lectura. Los valores de la mayoría de las propiedades marcadas como autoasignadas se restablecen al abrir el plan de generación de datos. Por ejemplo, las propiedades Collation, DataType, MaxLength, Nullable y RowsToGenerate, se restablecen cuando se marcan como autoasignadas. Las propiedades Unique, Seed y PercentageNull no se restablecen. Si marca las propiedades cuyos valores se restablecerán como de sólo lectura, evitará confundir a los usuarios del generador de datos personalizado.

Vea también

Tareas

Cómo: Crear generadores de datos personalizados

Tutorial: Crear un generador de datos personalizado

Conceptos

Descripción general de la extensibilidad del Generador de datos