ScriptTask.PreCompile Property
パッケージが保存されるときに VSA スクリプトがコンパイルされるかどうかを示す値を取得します。値の設定も可能です。
名前空間: Microsoft.SqlServer.Dts.Tasks.ScriptTask
アセンブリ: Microsoft.SqlServer.ScriptTask (microsoft.sqlserver.scripttask.dll 内)
構文
'宣言
Public Property PreCompile As Boolean
public bool PreCompile { get; set; }
public:
property bool PreCompile {
bool get ();
void set (bool value);
}
/** @property */
public boolean get_PreCompile ()
/** @property */
public void set_PreCompile (boolean value)
public function get PreCompile () : boolean
public function set PreCompile (value : boolean)
プロパティ値
パッケージが保存されるときに VSA スクリプトがコンパイルされる場合は true、コンパイルされない場合は false です。既定値は true です。
解説
パッケージを実行する前に VSA スクリプトをコンパイルする必要があります。スクリプト タスクには、パッケージが保存されるときに、スクリプトをバイナリ コードにプリコンパイルするオプションがあります。スクリプトがプリコンパイルされると、実行時に言語エンジンは読み込まれず、パッケージはより迅速に実行されます。ただし、コンパイルされたバイナリ ファイルは大量のディスク領域を使用します。プリコンパイルされていないスクリプトが実行時にコンパイルされると、パッケージの実行速度は低下しますが、ディスク領域の使用量が少なくなります。大容量のパッケージを保存しても問題にならない場合は、VSA スクリプトをプリコンパイルする必要があります。
使用例
コンソール アプリケーションで実装された次のコード サンプルでは、ScriptTask をパッケージに追加し、そのプロパティ (PreCompile プロパティを含む) の一部の既定値を表示します。
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace ScriptTaskCS
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
string newLine = System.Environment.NewLine;
Executable exe = pkg.Executables.Add("STOCK:ScriptTask");
TaskHost thTask = (TaskHost)exe;
string taskInfo;
taskInfo =
"Project name: " +
thTask.Properties["VsaProjectName"].GetValue(thTask) + newLine +
"Entry point: " +
thTask.Properties["EntryPoint"].GetValue(thTask) + newLine +
"Script Language: " +
thTask.Properties["ScriptLanguage"].GetValue(thTask) + newLine +
"Precompiled?: " +
thTask.Properties["PreCompile"].GetValue(thTask) + newLine +
"ReadOnlyVariables: " +
thTask.Properties["ReadOnlyVariables"].GetValue(thTask) + newLine +
"ReadWriteVariables: " +
thTask.Properties["ReadWriteVariables"].GetValue(thTask);
Console.WriteLine(taskInfo);
Console.Read();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module Module1
Sub Main()
Dim pkg As New Package
Dim newLine As String = System.Environment.NewLine
Dim exe As Executable = pkg.Executables.Add("STOCK:ScriptTask")
Dim thTask As TaskHost = CType(exe, TaskHost)
Dim taskInfo As String
taskInfo = "Project name: " & _
thTask.Properties("VsaProjectName").GetValue(thTask) & newLine & _
"Entry point: " & _
thTask.Properties("EntryPoint").GetValue(thTask) & newLine & _
"Script Language: " & _
thTask.Properties("ScriptLanguage").GetValue(thTask) & newLine & _
"Precompiled?: " & _
thTask.Properties("PreCompile").GetValue(thTask) & newLine & _
"ReadOnlyVariables: " & _
thTask.Properties("ReadOnlyVariables").GetValue(thTask) & newLine & _
"ReadWriteVariables: " & _
thTask.Properties("ReadWriteVariables").GetValue(thTask)
Console.WriteLine(taskInfo)
Console.Read()
End Sub
End Module
スレッド セーフ
この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォーム
開発プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
対象プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
参照
関連項目
ScriptTask Class
ScriptTask Members
Microsoft.SqlServer.Dts.Tasks.ScriptTask Namespace