Aracılığıyla paylaş


ObjectDataSourceEventArgs Sınıf

Tanım

Denetimin ObjectCreating ve ObjectCreated olayları ObjectDataSource için veri sağlar.

public ref class ObjectDataSourceEventArgs : EventArgs
public class ObjectDataSourceEventArgs : EventArgs
type ObjectDataSourceEventArgs = class
    inherit EventArgs
Public Class ObjectDataSourceEventArgs
Inherits EventArgs
Devralma
ObjectDataSourceEventArgs

Örnekler

Bu bölüm iki kod örneği içerir. İlk kod örneği, bilgileri almak ve görüntülemek için bir denetimin bir iş nesnesi ve bir GridView denetimle nasıl kullanılacağını ObjectDataSource gösterir. İkinci kod örneği, ilk kod örneğinin kullandığı örnek temel iş nesnesini sağlar.

Aşağıdaki kod örneği, bilgileri almak ve görüntülemek için bir denetimin bir iş nesnesiyle ve denetimle GridView nasıl kullanılacağını ObjectDataSource gösterir. Bu örnekte, birçok gerçek dünya senaryosunda olduğu gibi, iş nesnesinin varsayılan örneğini denetimle ObjectDataSource kullanmak mümkün veya uygun olmayabilir. Bu örnekte, ObjectDataSource bir özel durum oluşturacağından parametresiz oluşturucuyu başarıyla çağıramaz. Bazı durumlarda parametresiz oluşturucu korunabilir ve bazı durumlarda iş nesnesini istenen duruma başlatamayabilir. Nedeni ne olursa olsun, iş nesnesinin bir örneğini kendiniz oluşturabilir ve örneği işleyiciye ObjectInstance geçirilen nesnenin ObjectDataSourceEventArgs özelliğine ayarlayabilirsiniz. Bu, öğesinin işini gerçekleştirmek için kullanacağı iş nesnesi örneğidir ObjectDataSource .

<%@ Import namespace="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void NorthwindLogicCreating(object sender, ObjectDataSourceEventArgs e)
{
    // Create an instance of the business object using a non-default constructor.
    EmployeeLogic eLogic = new EmployeeLogic("Not created by the default constructor!");
    
    // Set the ObjectInstance property so that the ObjectDataSource uses the created instance.
    e.ObjectInstance = eLogic;
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:gridview>

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          onobjectcreating="NorthwindLogicCreating"
          typename="Samples.AspNet.CS.EmployeeLogic" >
        </asp:objectdatasource>

    </form>
  </body>
</html>
<%@ Import namespace="Samples.AspNet.VB" %>
<%@ Page language="vb" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub NorthwindLogicCreating(sender As Object, e As ObjectDataSourceEventArgs)

    ' Create an instance of the business object using a non-default constructor.
    Dim eLogic As EmployeeLogic = New EmployeeLogic("Not created by the default constructor!")
    
    ' Set the ObjectInstance property so that the ObjectDataSource uses the created instance.
    e.ObjectInstance = eLogic
    
End Sub ' NorthwindLogicCreating

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - VB Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:gridview>

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          onobjectcreating="NorthwindLogicCreating"
          typename="Samples.AspNet.VB.EmployeeLogic" >
        </asp:objectdatasource>

    </form>
  </body>
</html>

Aşağıdaki kod örneği, önceki kod örneğinin kullandığı örnek temel iş nesnesini gösterir.

namespace Samples.AspNet.CS {

using System;
using System.Collections;
using System.Web.UI;
using System.Web.UI.WebControls;

  public class EmployeeLogic {

    public EmployeeLogic() {  
        throw new NotSupportedException("Initialize data.");
    }
    
    public EmployeeLogic(string data) {
        _data = data;
    }

    private string _data;
    
    // Returns a collection of NorthwindEmployee objects.
    public ICollection GetAllEmployees () {
      ArrayList al = new ArrayList();      
      al.Add(_data);        
      return al;
    }
  }
}
Imports System.Collections
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB
  Public Class EmployeeLogic
    
    
    Public Sub New() 
        Throw New NotSupportedException("Initialize data.")
    
    End Sub
    
    
    Public Sub New(ByVal data As String) 
        _data = data
    
    End Sub
    
    Private _data As String
    
    
    ' Returns a collection of NorthwindEmployee objects.
    Public Function GetAllEmployees() As ICollection 
        Dim al As New ArrayList()
        al.Add(_data)
        Return al
    
    End Function 'GetAllEmployees
  End Class
End Namespace ' Samples.AspNet.VB

Açıklamalar

sınıfıObjectDataSourceEventArgs, denetimi ve OnObjectCreated iş nesnesini kullanan herhangi bir veri işlemi gerçekleştirilmeden önce iş nesnesi örneğine erişim sağlamak için ve yöntemlerinde ObjectDataSource kullanılırOnObjectCreating. İş nesnesi ayarlanır ve özelliği kullanılarak ObjectInstance erişilir. Olayı işlemek ObjectCreating için bir olay işleyici temsilcisi ekleyerek, örneği oluşturmak yerine özel kodda iş nesnesinin ObjectDataSource bir örneğini oluşturabilirsiniz. Bu, iş nesnenizin varsayılan olmayan bir örneğini veya örneği oluşturmak için parametresiz bir oluşturucu çağırmak istediğinizde yararlıdır; , ObjectDataSource birlikte çalıştığı iş nesnesinin bir örneğini oluşturmak için her zaman parametresiz oluşturucuyu çağırır. Ayrıca olayı işlemek ObjectCreated için bir olay işleyicisi temsilcisi de ekleyebilirsiniz. Bu temsilci, ek başlatma veya çalışma gerçekleştirmek için iş nesnesinin herkese açık üyelerine erişmenizi sağlar.

OnObjectCreating Veri işlemlerini gerçekleştiren iş nesnesi yöntemi ise ve OnObjectCreated yöntemleri denetim tarafından ObjectDataSource çağrılmıyor.static

Denetim, ObjectDataSource yaşam döngüsünde çeşitli zamanlarda temel alınan iş nesnesiyle çalışmak için işleyebileceğiniz birçok olayı kullanıma sunar. Aşağıdaki tabloda olaylar ve ilişkili EventArgs sınıflar ile olay işleyici temsilcileri listelemektedir.

Olay Eventargs Eventhandler
ObjectCreating.

İş nesnesinin örneği oluşturulmadan hemen önce gerçekleşir.
ObjectDataSourceEventArgs ObjectDataSourceObjectEventHandler
ObjectCreated.

İş nesnesinin örneği oluşturulduktan hemen sonra gerçekleşir.
ObjectDataSourceEventArgs ObjectDataSourceObjectEventHandler
Selecting.

Veriler alınmadan önce gerçekleşir.
ObjectDataSourceSelectingEventArgs ObjectDataSourceSelectingEventHandler
Inserting, Updatingve Deleting.

Ekleme, güncelleştirme veya silme işlemi gerçekleştirilmeden önce gerçekleşir.
ObjectDataSourceMethodEventArgs ObjectDataSourceMethodEventHandler
Selected.

Veriler alındıktan sonra gerçekleşir.
ObjectDataSourceStatusEventArgs ObjectDataSourceStatusEventHandler
Inserted, Updated, Deleted.

Ekleme, güncelleştirme veya silme işlemi tamamlandıktan sonra gerçekleşir.
ObjectDataSourceStatusEventArgs ObjectDataSourceStatusEventHandler
ObjectDisposing.

İş nesnesi yok edilmeden önce gerçekleşir.
ObjectDataSourceDisposingEventArgs ObjectDataSourceDisposingEventHandler

Oluşturucular

ObjectDataSourceEventArgs(Object)

Belirtilen nesneyi kullanarak sınıfının yeni bir örneğini ObjectDataSourceEventArgs başlatır.

Özellikler

ObjectInstance

Denetimin veri işlemlerini gerçekleştirdiği iş nesnesini temsil eden ObjectDataSource bir nesneyi alır veya ayarlar.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.