Distribution Class

Provides a base class that enables you to use the declarative API for distributions.

Inheritance Hierarchy

System.Object
  Microsoft.Data.Schema.Tools.DataGenerator.Distribution

Namespace:  Microsoft.Data.Schema.Tools.DataGenerator
Assembly:  Microsoft.Data.Schema.Tools (in Microsoft.Data.Schema.Tools.dll)

Syntax

'Declaration
<CLSCompliantAttribute(True)> _
<DistributionAttribute(GetType(DefaultDistributionDesigner))> _
Public MustInherit Class Distribution _
    Implements IDistribution, IExtensionInformation, IExtension
[CLSCompliantAttribute(true)]
[DistributionAttribute(typeof(DefaultDistributionDesigner))]
public abstract class Distribution : IDistribution, 
    IExtensionInformation, IExtension
[CLSCompliantAttribute(true)]
[DistributionAttribute(typeof(DefaultDistributionDesigner))]
public ref class Distribution abstract : IDistribution, 
    IExtensionInformation, IExtension
[<AbstractClass>]
[<CLSCompliantAttribute(true)>]
[<DistributionAttribute(typeof(DefaultDistributionDesigner))>]
type Distribution =  
    class
        interface IDistribution
        interface IExtensionInformation
        interface IExtension
    end
public abstract class Distribution implements IDistribution, IExtensionInformation, IExtension

The Distribution type exposes the following members.

Constructors

  Name Description
Protected method Distribution Called from constructors in derived classes to initialize the Distribution class.

Top

Properties

  Name Description
Public property ExtensionHandle Gets the extension handle for the associated object.

Top

Methods

  Name Description
Public method Equals Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetRangeValue Returns a value between 0 and 1 that represents a point on the distribution curve.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method Initialize Initializes this instance by using the provided initialization information.
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method OnGetRangeValue Returns a value between 0 and 1 and represents a point on the distribution curve.
Protected method OnInitialize Initializes a distribution when it is overridden in a derived class.
Protected method OnSetInputValues Implements custom behavior that is executed when the input values for a distribution are set.
Protected method OnValidateInputs Validates that all the required input properties for the distribution have been set when they are overridden in a derived class.
Public method SetExtensionHandle Sets the extension handle.
Public method SetInputValues Sets input values for a distribution. This method cannot be overridden.
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method ValidateInputs Validates that all the required input properties for the distribution have been set.

Top

Remarks

Each numeric data generator has a Distribution property. The user can specify that the property generates data that approximates a statistical distribution curve. The standard distribution options are as follows: Uniform, Normal, Normal Inverse, Exponential, and Exponential Inverse.

If the standard distributions are insufficient, you can create a custom distribution. To create a custom distribution, you must create a class that implements IDistribution or inherits from Distribution. You identify the class as a distribution by decorating it with DistributionAttribute.

You can create a custom designer for a custom distribution to work with the object at design time, or you can use the DefaultDistributionDesigner.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.Data.Schema.Tools.DataGenerator Namespace

IExtension

IDistribution

DistributionInit

Other Resources

Generating Data with Data Generators