ObjectDataSourceEventArgs.ObjectInstance (Propiedad)
Actualización: noviembre 2007
Obtiene o establece un objeto que representa el objeto de negocios con el que el control ObjectDataSource realiza las operaciones de datos.
Ensamblado: System.Web (en System.Web.dll)
/** @property */ public Object get_ObjectInstance() /** @property */ public void set_ObjectInstance(Object value)
public function get ObjectInstance () : Object public function set ObjectInstance (value : Object)
Valor de propiedad
Tipo: System.ObjectEl objeto de negocios utiliza el objeto ObjectDataSource para realizar las operaciones de datos; de lo contrario, null, si se pasa null a ObjectDataSourceEventArgs.
Esta sección contiene dos ejemplos de código. En el primer ejemplo de código se muestra cómo se utiliza un control ObjectDataSource con un objeto comercial y un control GridView para recuperar y presentar información. El segundo ejemplo de código proporciona el objeto de negocios básico de ejemplo que utiliza el primer ejemplo de código.
En el ejemplo de código siguiente se muestra cómo se utiliza un control ObjectDataSource con un objeto comercial y un control GridView para recuperar y presentar información. En este ejemplo, como en muchos escenarios reales, puede que no sea posible ni adecuado utilizar una instancia predeterminada del objeto de negocios con el control ObjectDataSource. En este ejemplo, ObjectDataSource no puede llamar correctamente al constructor predeterminado porque producirá una excepción. En algunos casos, constructor predeterminado puede estar protegido y en otros puede que no se inicialice el objeto de negocios a un estado deseado. Sea cual sea la razón, puede crear una instancia propia del objeto de negocios y establecer la instancia en la propiedad ObjectInstance del objeto ObjectDataSourceEventArgs que se pasa al controlador. Ésta es la instancia del objeto de negocios que el objeto ObjectDataSource utilizará para realizar su trabajo.
<%@ 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>
El siguiente ejemplo de código muestra el objeto de negocios básico de ejemplo que utiliza el ejemplo de código precedente.
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; } } }
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.