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