LinqDataSource.ContextCreating イベント


コンテキスト タイプ オブジェクトのインスタンスが作成される前に発生します。Occurs before an instance of the context type object is created.

 event EventHandler<System::Web::UI::WebControls::LinqDataSourceContextEventArgs ^> ^ ContextCreating;
public event EventHandler<System.Web.UI.WebControls.LinqDataSourceContextEventArgs> ContextCreating;
member this.ContextCreating : EventHandler<System.Web.UI.WebControls.LinqDataSourceContextEventArgs> 
Public Custom Event ContextCreating As EventHandler(Of LinqDataSourceContextEventArgs) 



次の例は、イベント中にパラメーターなしのコンストラクターを使用して、データコンテキストオブジェクトを作成する方法を示して ContextCreating います。The following example shows how to create the data context object by using a non-parameterless constructor during the ContextCreating event. このコードは、オブジェクトをプロパティに割り当て ObjectInstance ます。The code assigns the object to the ObjectInstance property.

protected void LinqDataSource_ContextCreating(object sender, LinqDataSourceContextEventArgs e)
    e.ObjectInstance = new ExampleDataContext(ConfigurationManager.ConnectionStrings["ExampleConnectionString"].ConnectionString);
Protected Sub LinqDataSource_ContextCreating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceContextEventArgs)
    e.ObjectInstance = New ExampleDataContext(ConfigurationManager.ConnectionStrings("ExampleConnectionString").ConnectionString)
End Sub


既定では、 LinqDataSource コントロールは、プロパティで指定された型のインスタンスを作成し ContextTypeName ます。By default, the LinqDataSource control creates an instance of the type that is specified in the ContextTypeName property. コントロールは、 LinqDataSource データコンテキストオブジェクトのパラメーターなしのコンストラクターを呼び出して、オブジェクトのインスタンスを作成します。The LinqDataSource control calls the parameterless constructor of the data context object to create an instance of the object. パラメーターなしのコンストラクターを使用するか、プロパティに指定されているものとは異なるオブジェクトを作成する必要がある可能性があり ContextTypeName ます。It is possible that you have to use a non-parameterless constructor or you have to create an object that differs from the one specified in the ContextTypeName property. その場合は、イベントを処理 ContextCreating し、データコンテキストオブジェクトを手動で作成する必要があります。In that case, you must handle the ContextCreating event and manually create the data context object.

Context 型オブジェクトは、select、update、insert、delete の各操作中に作成されます。The context type object is created during select, update, insert, and delete operations.

イベントが発生しない場合は、1回だけ発生します。There is one time when the event is not raised. これは、プログラムを使用して、 Result イベントのイベントハンドラー内のオブジェクトにプロパティを設定する場合です SelectingThis is when you programmatically set the Result property to an object in an event handler for the Selecting event. 追加の条件として、元の値をビューステートに格納する必要がないこと、またはプロパティのオブジェクトがインターフェイスを実装していることが挙げられ Result ITable ます。An additional condition is that either the original values do not have to be stored in view state, or the object in the Result property implements the ITable interface.