ObjectDataSourceEventArgs.ObjectInstance Özellik

Tanım

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

public:
 property System::Object ^ ObjectInstance { System::Object ^ get(); void set(System::Object ^ value); };
public object ObjectInstance { get; set; }
member this.ObjectInstance : obj with get, set
Public Property ObjectInstance As Object

Özellik Değeri

veri işlemlerini gerçekleştirmek için kullanılan iş nesnesiObjectDataSource; aksi takdirde , nullöğesine ObjectDataSourceEventArgsgeçirilirsenull.

Örnekler

Bu bölüm iki kod örneği içerir. İlk kod örneği, bir denetimin ObjectDataSource bir iş nesnesiyle ve bilgileri almak ve görüntülemek için bir GridView denetimle nasıl kullanılacağını 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, denetimle ObjectDataSource iş nesnesinin varsayılan örneğini 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şlatmayabilir. 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 çalışmasını 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

Şunlara uygulanır

Ayrıca bkz.