Generator.OnGenerateNextValues (Método)
Genera el siguiente valor de acuerdo con el algoritmo de generación de datos.
Espacio de nombres: Microsoft.Data.Schema.Tools.DataGenerator
Ensamblado: Microsoft.Data.Schema.Tools (en Microsoft.Data.Schema.Tools.dll)
Sintaxis
'Declaración
Protected Overridable Sub OnGenerateNextValues
protected virtual void OnGenerateNextValues()
protected:
virtual void OnGenerateNextValues()
abstract OnGenerateNextValues : unit -> unit
override OnGenerateNextValues : unit -> unit
protected function OnGenerateNextValues()
Comentarios
El método OnGenerateNextValues crea los datos cuando se ejecuta un plan de generación de datos. Debe reemplazar este método para proporcionar la lógica que genera los datos para las propiedades de salida del generador de datos.
El método GenerateNextValues llama a este método. Para modificar la funcionalidad de GenerateNextValues, debe invalidar OnGenerateNextValues.
Ejemplos
Este ejemplo reemplaza el método OnGenerateNextValues para generar los datos aleatorios de un generador de datos. Este ejemplo de código forma parte de un ejemplo más extenso referente a la clase Generator.
DateTime mRandomDate;
Random mRandom;
Random mRandomRange;
protected override void OnGenerateNextValues()
{
DateTime min;
DateTime max;
// Generate a random date from either range 1 or range 2.
// Randomly select either range 1 or range 2 by randomly
// generating an odd or an even random number.
if (mRandomRange.Next() % 2 == 0) //check for odd or even
{
min = mRange1Min;
max = mRange1Max;
}
else
{
min = mRange2Min;
max = mRange2Max;
}
// The formula for creating a random number in a specific range is:
// start of range + (size of range * random number between 0 and 1)
// Size of range
TimeSpan range = max - min;
// (Size of range * random number between 0 and 1)
TimeSpan randomNumber = new TimeSpan((long)(range.Ticks * mRandom.NextDouble()));
// Start of range + (size of range * random number between 0 and 1)
mRandomDate = min + randomNumber;
}
Dim mRandomDate As Date
Dim mRandom As Random
Dim mRandomRange As Random
Protected Overrides Sub OnGenerateNextValues()
Dim min As Date
Dim max As Date
' Generate a random date from either range 1 or range 2.
' Randomly select either range 1 or range 2 by randomly
' generating an odd or an even random number.
' Check for odd or even
If mRandomRange.Next() Mod 2 = 0 Then
min = mRange1Min
max = mRange1Max
Else
min = mRange2Min
max = mRange2Max
End If
' The formula for creating a random number in a specific range is:
' start of range + (size of range * random number between 0 and 1)
' Size of range
Dim range As TimeSpan = max - min
' (Size of range * random number between 0 and 1)
Dim randomNumber As TimeSpan = _
New TimeSpan(CLng(range.Ticks * mRandom.NextDouble()))
' Start of range + (size of range * random number between 0 and 1)
mRandomDate = min + randomNumber
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
Microsoft.Data.Schema.Tools.DataGenerator (Espacio de nombres)