Generator.OnInitialize 方法
更新:2007 年 11 月
初始化生成器。
命名空间: Microsoft.VisualStudio.TeamSystem.Data.DataGenerator
程序集: Microsoft.VisualStudio.TeamSystem.Data(在 Microsoft.VisualStudio.TeamSystem.Data.dll 中)
语法
声明
Protected Overridable Sub OnInitialize ( _
initInfo As GeneratorInit _
)
用法
Dim initInfo As GeneratorInit
Me.OnInitialize(initInfo)
protected virtual void OnInitialize(
GeneratorInit initInfo
)
protected:
virtual void OnInitialize(
GeneratorInit^ initInfo
)
protected function OnInitialize(
initInfo : GeneratorInit
)
参数
initInfo
类型:Microsoft.VisualStudio.TeamSystem.Data.DataGenerator.GeneratorInit运行库配置信息,如数据库连接字符串。还包括共享的实例化信息。
备注
OnInitialize 在数据生成开始之前会运行所需的所有初始化代码。此代码可包括初始化随机对象或缓存数据库。
生成随机数据时,数据可以是确定性的,也可以是非确定性的。每次利用相同的种子生成随机数据时,确定性数据都会重复相同的随机数据。所有的数据生成器都有一个可以由用户设置的 Seed 属性。可以重写 OnInitialize 方法,以便为 Random 对象提供种子并使生成器具有确定性。
Initialize() 方法调用此方法。如果要重写 Initialize() 功能,则应重写 OnInitialize。
示例
本示例使用 Seed 属性来创建具有确定性的生成器。此代码示例摘自一个为 Generator 类提供的更大的示例。
Random mRandom;
Random mRandomRange;
protected override void OnInitialize(GeneratorInit initInfo)
{
mRandom = new Random(this.Seed); //deterministic
mRandomRange = new Random(this.Seed); //deterministic
//mRandom = new Random(); //non-deterministic
//mRandomRange = new Random(); //non-deterministic
base.OnInitialize(initInfo);
}
Dim mRandom As Random
Dim mRandomRange As Random
Protected Overrides Sub OnInitialize(ByVal initInfo As GeneratorInit)
mRandom = New Random(Me.Seed) 'deterministic
mRandomRange = New Random(Me.Seed) 'deterministic
'mRandom = New Random() 'non-deterministic
'mRandomRange = New Random() 'non-deterministic
MyBase.OnInitialize(initInfo)
End Sub
权限
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。
另请参见
参考
Microsoft.VisualStudio.TeamSystem.Data.DataGenerator 命名空间