Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ObjectDataSource-Klasse

 

Stellt ein Geschäftsobjekt dar, das Daten zu datengebundenen Steuerelementen in Webanwendungsarchitekturen mit mehreren Ebenen bereitstellt.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

System.Object
  System.Web.UI.Control
    System.Web.UI.DataSourceControl
      System.Web.UI.WebControls.ObjectDataSource

[ToolboxBitmapAttribute(typeof(ObjectDataSource))]
public class ObjectDataSource : DataSourceControl

NameBeschreibung
System_CAPS_pubmethodObjectDataSource()

Initialisiert eine neue Instanz der ObjectDataSource-Klasse.

System_CAPS_pubmethodObjectDataSource(String, String)

Initialisiert eine neue Instanz der ObjectDataSource -Klasse mit dem angegebenen Typnamen und Datenabrufmethoden-Namens.

NameBeschreibung
System_CAPS_protpropertyAdapter

Ruft den browserspezifischen Adapter für das Steuerelement ab.(Geerbt von „Control“.)

System_CAPS_pubpropertyAppRelativeTemplateSourceDirectory

Ruft ab oder legt das virtuelle Verzeichnis der Anwendung relativen des der Page oder UserControl -Objekt, das dieses Steuerelement enthält.(Geerbt von „Control“.)

System_CAPS_pubpropertyBindingContainer

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft das Steuerelement, das diesem Steuerelement Datenbindung enthält.(Geerbt von „Control“.)

System_CAPS_pubpropertyCacheDuration

Ruft ab oder legt die Zeitspanne in Sekunden an, die das Datenquellen-Steuerelement Daten zwischenspeichert, die von abgerufen werden die SelectMethod Eigenschaft.

System_CAPS_pubpropertyCacheExpirationPolicy

Ruft ab oder legt dem Verhalten der Cache-Ablauf, die zusammen mit der Dauer beschreibt das Verhalten des Caches, der das Datenquellen-Steuerelement verwendet.

System_CAPS_pubpropertyCacheKeyDependency

Ruft ab oder legt eine benutzerdefinierte Key-Abhängigkeit, die auf alle Daten Zwischenspeichern von Objekten verknüpft ist, die durch das Datenquellen-Steuerelement erstellt werden.

System_CAPS_protpropertyChildControlsCreated

Ruft einen Wert, der angibt, ob die untergeordneten Steuerelemente des Serversteuerelements erstellt wurden.(Geerbt von „Control“.)

System_CAPS_pubpropertyClientID

Ruft den Serverbezeichner-Steuerelement von ASP.NET generiert wird.(Geerbt von „DataSourceControl“.)

System_CAPS_pubpropertyClientIDMode

Diese Eigenschaft wird nicht für Datenquellensteuerelemente verwendet.(Geerbt von „DataSourceControl“.)

System_CAPS_protpropertyClientIDSeparator

Ruft einen Zeichenwert, der verwendete Trennzeichen darstellt ab der ClientID Eigenschaft.(Geerbt von „Control“.)

System_CAPS_pubpropertyConflictDetection

Ruft ab oder legt einen Wert, der bestimmt, ob nur die neuen Werte, um übergeben werden die Update Methode oder die alten und neuen Werte übergeben werden die Update Methode.

System_CAPS_protpropertyContext

Ruft die HttpContext Objekt, das mit dem Steuerelement für die aktuelle Webanfrage zugeordnet.(Geerbt von „Control“.)

System_CAPS_pubpropertyControls

Ruft ein ControlCollection -Objekt, das die untergeordneten Steuerelemente für ein angegebenes Serversteuerelement in der Hierarchie der Benutzeroberfläche darstellt.(Geerbt von „DataSourceControl“.)

System_CAPS_pubpropertyConvertNullToDBNull

Ruft ab oder legt einen Wert, der, ob die Parameter Werte, um ein Update, Insert oder Delete-Vorgang übergeben werden, automatisch konvertiert werden, aus null die Value wichtig ist, die ObjectDataSource Steuerelement.

System_CAPS_pubpropertyDataItemContainer

Ruft einen Verweis auf den Benennungscontainer, wenn der Benennungscontainer implementiert IDataItemContainer.(Geerbt von „Control“.)

System_CAPS_pubpropertyDataKeysContainer

Ruft einen Verweis auf den Benennungscontainer, wenn der Benennungscontainer implementiert IDataKeysControl.(Geerbt von „Control“.)

System_CAPS_pubpropertyDataObjectTypeName

Ruft ab oder legt den Namen einer Klasse, die die ObjectDataSource Steuerelement für einen Parameter in einer Aktualisierung verwendet, einfügen oder Löschen von Datenvorgang anstelle der Übergabe einzelner Werte aus dem datengebundenen Steuerelement.

System_CAPS_pubpropertyDeleteMethod

Ruft ab oder legt den Namen der Methode oder Funktion, die die ObjectDataSource -Steuerelement zum Löschen von Daten aufgerufen wird.

System_CAPS_pubpropertyDeleteParameters

Ruft die Parameters-Auflistung, die die Parameter, die enthält von verwendet die DeleteMethod Methode.

System_CAPS_protpropertyDesignMode

Ruft einen Wert, der angibt, ob ein Steuerelement auf einer Entwurfsoberfläche verwendet wird.(Geerbt von „Control“.)

System_CAPS_pubpropertyEnableCaching

Ruft ab oder legt einen Wert, der angibt, ob die ObjectDataSource kontrolliert das Zwischenspeichern von Daten aktiviert.

System_CAPS_pubpropertyEnablePaging

Ruft ab oder legt einen Wert, der angibt, ob das Datenquellen-Steuerelement Paging für die Daten unterstützt, die es abruft.

System_CAPS_pubpropertyEnableTheming

Ruft einen Wert, der angibt, ob dieses Objekt Designs unterstützt.(Geerbt von „DataSourceControl“.)

System_CAPS_pubpropertyEnableViewState

Ruft einen Wert ab, der dem anfordernden Client angibt, ob das Serversteuerelement seinen Ansichtszustand sowie den Ansichtszustand von jedem enthaltenen untergeordneten Steuerelement beibehält, oder legt diesen fest.(Geerbt von „Control“.)

System_CAPS_protpropertyEvents

Ruft eine Liste von Ereignishandlerdelegaten für das Steuerelement ab. Diese Eigenschaft ist schreibgeschützt.(Geerbt von „Control“.)

System_CAPS_pubpropertyFilterExpression

Ruft ab oder legt einen Filterausdruck, der angewendet wird, wenn die Methode, die anhand der SelectMethod -Eigenschaft aufgerufen.

System_CAPS_pubpropertyFilterParameters

Ruft eine Auflistung von Parametern, die beliebigen Parameterplatzhaltern in zugeordnet sind die FilterExpression Zeichenfolge.

System_CAPS_protpropertyHasChildViewState

Ruft einen Wert, der angibt, ob die untergeordneten Steuerelemente des aktuellen Steuerelements gespeicherten Ansichtszustand Einstellungen verfügen.(Geerbt von „Control“.)

System_CAPS_pubpropertyID

Ruft ab oder legt den programmgesteuerten Bezeichner für das Webserversteuerelement zugewiesen.(Geerbt von „Control“.)

System_CAPS_protpropertyIdSeparator

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft das Zeichen zum Trennen der Steuerelement-IDs verwendet.(Geerbt von „Control“.)

System_CAPS_pubpropertyInsertMethod

Ruft ab oder legt den Namen der Methode oder Funktion, die die ObjectDataSource -Steuerelement zum Einfügen von Daten aufgerufen wird.

System_CAPS_pubpropertyInsertParameters

Ruft die Parameters-Auflistung, die die Parameter, die enthält von verwendet werden, die InsertMethod Eigenschaft.

System_CAPS_protpropertyIsChildControlStateCleared

Ruft einen Wert, der angibt, ob dieses Steuerelement enthaltenen Steuerelemente Steuerelementzustand verfügen.(Geerbt von „Control“.)

System_CAPS_protpropertyIsTrackingViewState

Ruft einen Wert, der angibt, ob das Serversteuerelement Änderungen an seinem Ansichtszustand gespeichert wird.(Geerbt von „Control“.)

System_CAPS_protpropertyIsViewStateEnabled

Ruft einen Wert, der angibt, ob der Ansichtszustand für dieses Steuerelement aktiviert ist.(Geerbt von „Control“.)

System_CAPS_protpropertyLoadViewStateByID

Ruft einen Wert, der angibt, ob das Steuerelement seinen Ansichtszustand über laden ID anstelle Index.(Geerbt von „Control“.)

System_CAPS_pubpropertyMaximumRowsParameterName

Ruft ab oder legt den Namen des Business-Objekt Daten abrufen Parameters der Methode, die verwendet wird, um anzugeben, die Anzahl der Datensätze, die für die Unterstützung des Datenquellen-Paging abgerufen.

System_CAPS_pubpropertyNamingContainer

Ruft ein Verweis auf das Serversteuerelement Benennungscontainers, erstellt einen eindeutigen Namespace für die Unterscheidung zwischen Serversteuerelementen mit demselben Control.ID Eigenschaftswert.(Geerbt von „Control“.)

System_CAPS_pubpropertyOldValuesParameterFormatString

Ruft ab oder legt eine Zeichenfolge, die Namen der Parameter für ursprüngliche Werte angewendet, die übergeben werden, die Delete oder Update Methoden.

System_CAPS_pubpropertyPage

Ruft einen Verweis auf die Page -Instanz, die das Steuerelement enthält.(Geerbt von „Control“.)

System_CAPS_pubpropertyParent

Ruft einen Verweis auf die übergeordnete Steuerelement des Serversteuerelements in der Steuerelementhierarchie der Seite ab.(Geerbt von „Control“.)

System_CAPS_pubpropertyParsingCulture

Ruft einen einen Wert, der angibt, welche Informationen zur Kultur verwendet wird, wenn Zeichenfolgenwerte tatsächliche Eigenschaftentypen konvertieren, um ein Objekt des Typs angegeben DataObjectTypeName.

System_CAPS_pubpropertyRenderingCompatibility

Ruft einen Wert ab, der die ASP.NET-Version angibt, mit der das gerenderte HTML kompatibel ist. (Geerbt von „Control“.)

System_CAPS_pubpropertySelectCountMethod

Ruft ab oder legt den Namen der Methode oder Funktion, die die ObjectDataSource -Steuerelement zum Abrufen der Zeilenanzahl aufgerufen wird.

System_CAPS_pubpropertySelectMethod

Ruft ab oder legt den Namen der Methode oder Funktion, die die ObjectDataSource -Steuerelement zum Abrufen von Daten aufgerufen wird.

System_CAPS_pubpropertySelectParameters

Ruft eine Auflistung von Parametern, die von der Methode angegeben werden, verwendet die SelectMethod Eigenschaft.

System_CAPS_pubpropertySite

Ruft Informationen über den Container, der das aktuelle Steuerelement beim Rendern auf einer Entwurfsoberfläche hostet.(Geerbt von „Control“.)

System_CAPS_pubpropertySkinID

Ruft das Design zuweisen der DataSourceControl Steuerelement.(Geerbt von „DataSourceControl“.)

System_CAPS_pubpropertySortParameterName

Ruft ab oder legt den Namen des Geschäftsobjekts, der die SelectMethod Parameter zum Angeben eines Sortierungsausdrucks für die Datenquelle Sortierung unterstützt.

System_CAPS_pubpropertySqlCacheDependency

Ruft ab oder legt eine durch Semikolons getrennte Zeichenfolge, die gibt an, welche Datenbanken und Tabellen für die Abhängigkeit der Microsoft SQL Server-Cache verwenden.

System_CAPS_pubpropertyStartRowIndexParameterName

Ruft ab oder legt den Namen der Abruf-Methodenparameter, der verwendet wird, um den Wert des Bezeichners des ersten Datensatzes für die Unterstützung des Datenquellen-Paging abgerufen anzugeben.

System_CAPS_pubpropertyTemplateControl

Ruft ab oder legt einen Verweis auf die Vorlage, die dieses Steuerelement enthält.(Geerbt von „Control“.)

System_CAPS_pubpropertyTemplateSourceDirectory

Ruft das virtuelle Verzeichnis von der Page oder UserControl die das aktuelle Steuerelement enthält.(Geerbt von „Control“.)

System_CAPS_pubpropertyTypeName

Ruft ab oder legt den Namen der Klasse, die die ObjectDataSource -Objekt darstellt.

System_CAPS_pubpropertyUniqueID

Ruft den eindeutigen, hierarchisch qualifizierten Bezeichner für das Steuerelement ab.(Geerbt von „Control“.)

System_CAPS_pubpropertyUpdateMethod

Ruft ab oder legt den Namen der Methode oder Funktion, die die ObjectDataSource Steuerelement aufruft, um Daten zu aktualisieren.

System_CAPS_pubpropertyUpdateParameters

Ruft die Parameters-Auflistung, die die Parameter enthält, die von der Methode verwendet werden, die durch angegeben ist die UpdateMethod Eigenschaft.

System_CAPS_pubpropertyValidateRequestMode

Ruft ab oder legt einen Wert, der angibt, ob der Clienteingaben vom Browser auf potenziell gefährliche Werte überprüft.(Geerbt von „Control“.)

System_CAPS_protpropertyViewState

Ruft ein Wörterbuch von Statusinformationen, die zum Speichern und Wiederherstellen den Ansichtszustand eines Serversteuerelements in mehreren Anforderungen der gleichen Seite ermöglicht.(Geerbt von „Control“.)

System_CAPS_protpropertyViewStateIgnoresCase

Ruft einen Wert, der angibt, ob das StateBag Objekt wird Groß-und Kleinschreibung.(Geerbt von „Control“.)

System_CAPS_pubpropertyViewStateMode

Ruft ab oder legt den Modus Ansichtszustand des Steuerelements fest.(Geerbt von „Control“.)

System_CAPS_pubpropertyVisible

Ruft ab oder legt einen Wert, der angibt, ob das Steuerelement visuell angezeigt wird.(Geerbt von „DataSourceControl“.)

NameBeschreibung
System_CAPS_protmethodAddedControl(Control, Int32)

Wird aufgerufen, nachdem ein untergeordnetes Steuerelement hinzugefügt wird die Controls Auflistung von der Control Objekt.(Geerbt von „Control“.)

System_CAPS_protmethodAddParsedSubObject(Object)

Benachrichtigt das Serversteuerelement, dass entweder ein XML-Element oder HTML-Element analysiert wurde, und fügt das Element dem ControlCollection-Objekt des Serversteuerelements hinzu.(Geerbt von „Control“.)

System_CAPS_pubmethodApplyStyleSheetSkin(Page)

Wendet die Stileigenschaften, die im Stylesheet Seite auf das Steuerelement definiert sind.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodBeginRenderTracing(TextWriter, Object)

Beginnt die Entwurfszeit-Verfolgung des Renderings von Daten.(Geerbt von „Control“.)

System_CAPS_protmethodBuildProfileTree(String, Boolean)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Sammelt Informationen über das Steuerelement und übermittelt sie an die Trace -Eigenschaft angezeigt, wenn die Überwachung für die Seite aktiviert ist.(Geerbt von „Control“.)

System_CAPS_protmethodClearCachedClientID()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Legt die zwischengespeicherte ClientID Wert null.(Geerbt von „Control“.)

System_CAPS_protmethodClearChildControlState()

Löscht die Informationen zum Steuerelementzustand für die untergeordneten Steuerelemente des Serversteuerelements.(Geerbt von „Control“.)

System_CAPS_protmethodClearChildState()

Löscht den Ansichtszustand und den Steuerelementzustand Informationen für alle des Serversteuerelements untergeordneten Steuerelemente.(Geerbt von „Control“.)

System_CAPS_protmethodClearChildViewState()

Löscht die Informationen zum Ansichtszustand für alle Serversteuerelemente untergeordneten Steuerelemente.(Geerbt von „Control“.)

System_CAPS_protmethodClearEffectiveClientIDMode()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Legt die ClientIDMode -Eigenschaft der aktuellen Steuerelementinstanz und alle untergeordneten Steuerelemente entsprechend Inherit.(Geerbt von „Control“.)

System_CAPS_protmethodCreateChildControls()

Wird durch das ASP.NET-Seitenframework aufgerufen, um Serversteuerelemente anzuweisen, die eine kompositionsbasierte Implementierung verwenden, um alle untergeordneten Steuerelemente zu erstellen, die sie in Vorbereitung auf ein Postback oder Rendering enthalten.(Geerbt von „Control“.)

System_CAPS_protmethodCreateControlCollection()

Erstellt eine Auflistung zum Speichern untergeordneter Steuerelemente.(Geerbt von „DataSourceControl“.)

System_CAPS_pubmethodDataBind()

Bindet eine Datenquelle an das aufgerufene Serversteuerelement und alle untergeordneten Steuerelemente.(Geerbt von „Control“.)

System_CAPS_protmethodDataBind(Boolean)

Bindet eine Datenquelle an das aufgerufene Serversteuerelement und alle untergeordneten Steuerelemente mit der Option zum Auslösen der DataBinding Ereignis.(Geerbt von „Control“.)

System_CAPS_protmethodDataBindChildren()

Bindet eine Datenquelle an die untergeordneten Steuerelemente des Serversteuerelements.(Geerbt von „Control“.)

System_CAPS_pubmethodDelete()

Führt einen Löschvorgang durch Aufrufen der Methode, die identifizierte die DeleteMethod Eigenschaft mit Parametern, die in der DeleteParameters Auflistung.

System_CAPS_pubmethodDispose()

Ermöglicht es einem Serversteuerelement, die letzte Bereinigung durchzuführen, bevor sie aus dem Speicher freigegeben wird.(Geerbt von „Control“.)

System_CAPS_protmethodEndRenderTracing(TextWriter, Object)

Zur Entwurfszeit die Verfolgung von Renderingdaten wird beendet.(Geerbt von „Control“.)

System_CAPS_protmethodEnsureChildControls()

Bestimmt, ob das Serversteuerelement untergeordnete Steuerelemente enthält. Wenn dies nicht der Fall ist, erstellt er auf die untergeordneten Steuerelemente.(Geerbt von „Control“.)

System_CAPS_protmethodEnsureID()

Erstellt einen Bezeichner für Steuerelemente, die nicht über einen zugewiesenen Bezeichner verfügen.(Geerbt von „Control“.)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodFindControl(String)

Durchsucht den aktuellen Benennungscontainer nach einem Serversteuerelement mit der angegebenen id Parameter.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodFindControl(String, Int32)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Durchsucht den aktuellen Benennungscontainer nach einem Serversteuerelement mit der angegebenen id und eine ganze Zahl, die gemäß der pathOffset -Parameter, der die Suche unterstützt. Sie sollten diese Version von nicht überschreiben die FindControl Methode.(Geerbt von „Control“.)

System_CAPS_pubmethodFocus()

Setzt den Eingabefokus auf das Steuerelement.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodGetDesignModeState()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft die Entwurfszeitdaten für ein Steuerelement ab.(Geerbt von „Control“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetRouteUrl(Object)

Ruft die URL, die einen Satz von Routenparametern entspricht.(Geerbt von „Control“.)

System_CAPS_pubmethodGetRouteUrl(RouteValueDictionary)

Ruft die URL, die einen Satz von Routenparametern entspricht.(Geerbt von „Control“.)

System_CAPS_pubmethodGetRouteUrl(String, Object)

Ruft die URL, die einen Satz von Routenparametern und einem Routennamen entspricht.(Geerbt von „Control“.)

System_CAPS_pubmethodGetRouteUrl(String, RouteValueDictionary)

Ruft die URL, die einen Satz von Routenparametern und einem Routennamen entspricht.(Geerbt von „Control“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodGetUniqueIDRelativeTo(Control)

Gibt den Präfixen Teil der UniqueID -Eigenschaft des angegebenen Steuerelements.(Geerbt von „Control“.)

System_CAPS_protmethodGetView(String)

Ruft die benannte Datenquellenansicht, das das Datenquellen-Steuerelement zugeordnet ist.(Überschreibt DataSourceControl.GetView(String).)

System_CAPS_protmethodGetViewNames()

Ruft eine Auflistung von Namen, die die Liste von Objekten darstellt, die zugeordnet sind die ObjectDataSource Objekt.(Überschreibt DataSourceControl.GetViewNames().)

System_CAPS_pubmethodHasControls()

Bestimmt, ob das Serversteuerelement untergeordnete Steuerelemente enthält.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodHasEvents()

Gibt einen Wert, der angibt, ob Ereignisse für das Steuerelement oder einem beliebigen untergeordneten Steuerelement registriert werden.(Geerbt von „Control“.)

System_CAPS_pubmethodInsert()

Führt einen Einfügevorgang durch Aufrufen der Methode, die identifizierte der InsertMethod -Eigenschaft und aller Parameter in der InsertParameters Auflistung.

System_CAPS_protmethodIsLiteralContent()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Bestimmt, ob das Serversteuerelement nur literalen Inhalt enthält.(Geerbt von „Control“.)

System_CAPS_protmethodLoadControlState(Object)

Steuerelementzustand Informationen aus einer früheren Seitenanforderung, die von gespeichert wurde wiederhergestellt die SaveControlState Methode.(Geerbt von „Control“.)

System_CAPS_protmethodLoadViewState(Object)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Lädt den zuvor gespeicherten Ansichtszustand des ObjectDataSource-Steuerelements.(Überschreibt Control.LoadViewState(Object).)

System_CAPS_protmethodMapPathSecure(String)

Ruft den physischen Pfad, dem ein virtueller Pfad, einen absoluten oder relativen zugeordnet ist.(Geerbt von „Control“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_protmethodOnBubbleEvent(Object, EventArgs)

Bestimmt, ob das Ereignis für das Serversteuerelement in der UI-Serversteuerelementhierarchie der Seite nach oben übergeben wird.(Geerbt von „Control“.)

System_CAPS_protmethodOnDataBinding(EventArgs)

Löst das DataBinding-Ereignis aus.(Geerbt von „Control“.)

System_CAPS_protmethodOnInit(EventArgs)

Fügt ein LoadComplete -Ereignishandler, um die Seite mit den ObjectDataSource Steuerelement.(Überschreibt Control.OnInit(EventArgs).)

System_CAPS_protmethodOnLoad(EventArgs)

Löst das Load-Ereignis aus.(Geerbt von „Control“.)

System_CAPS_protmethodOnPreRender(EventArgs)

Löst das PreRender-Ereignis aus.(Geerbt von „Control“.)

System_CAPS_protmethodOnUnload(EventArgs)

Löst das Unload-Ereignis aus.(Geerbt von „Control“.)

System_CAPS_protmethodOpenFile(String)

Ruft eine Stream verwendet, um eine Datei zu lesen.(Geerbt von „Control“.)

System_CAPS_protmethodRaiseBubbleEvent(Object, EventArgs)

Weist eine beliebige Quelle des Ereignisses und den zugehörigen übergeordneten Element des Steuerelements.(Geerbt von „Control“.)

System_CAPS_protmethodRaiseDataSourceChangedEvent(EventArgs)

Löst das DataSourceChanged-Ereignis aus.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodRemovedControl(Control)

Wird aufgerufen, nachdem ein untergeordnetes Steuerelement aus entfernt, wird die Controls Auflistung von der Control Objekt.(Geerbt von „Control“.)

System_CAPS_protmethodRender(HtmlTextWriter)

Sendet den Inhalt des Steuerelements an ein angegebenes HtmlTextWriter-Objekt, das den auf dem Client zu rendernden Inhalt schreibt.(Geerbt von „Control“.)

System_CAPS_protmethodRenderChildren(HtmlTextWriter)

Gibt den Inhalt des Serversteuerelements an ein bereitgestelltes HtmlTextWriter -Objekt, das den zu rendernden Inhalt auf dem Client schreibt.(Geerbt von „Control“.)

System_CAPS_pubmethodRenderControl(HtmlTextWriter)

Gibt Inhalte von Serversteuerelementen an ein bereitgestelltes HtmlTextWriter -Objekt und Ablaufverfolgungsinformationen über das Steuerelement speichert, wenn die Überwachung aktiviert ist.(Geerbt von „DataSourceControl“.)

System_CAPS_protmethodRenderControl(HtmlTextWriter, ControlAdapter)

Gibt Inhalte von Serversteuerelementen an ein bereitgestelltes HtmlTextWriter -Objekt mithilfe eines bereitgestellten ControlAdapter Objekt.(Geerbt von „Control“.)

System_CAPS_protmethodResolveAdapter()

Ruft den Steuerelementadapter ab, für das Rendern des angegebenen Steuerelements verantwortlich.(Geerbt von „Control“.)

System_CAPS_pubmethodResolveClientUrl(String)

Ruft eine URL, die vom Browser verwendet werden kann.(Geerbt von „Control“.)

System_CAPS_pubmethodResolveUrl(String)

Konvertiert eine URL in eine, die auf dem anfordernden Client verwendet werden kann.(Geerbt von „Control“.)

System_CAPS_protmethodSaveControlState()

Speichert alle Zustandsänderungen des Serversteuerelements, die seit dem Zeitpunkt aufgetreten sind, zu dem die Seite an den Server zurückgesendet wurde.(Geerbt von „Control“.)

System_CAPS_protmethodSaveViewState()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Speichert den Zustand des ObjectDataSource-Steuerelements.(Überschreibt Control.SaveViewState().)

System_CAPS_pubmethodSelect()

Ruft Daten aus dem zugrunde liegenden Datenspeicher ab, durch Aufrufen der Methode, die identifizierte die SelectMethod Eigenschaft mit den Parametern in der SelectParameters Auflistung.

System_CAPS_protmethodSetDesignModeState(IDictionary)

Legt die Entwurfszeitdaten für ein Steuerelement fest.(Geerbt von „Control“.)

System_CAPS_pubmethodSetRenderMethodDelegate(RenderMethod)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Weist einen Ereignishandlerdelegaten für das Steuerelement und dessen Inhalt im übergeordneten Steuerelement zu rendern.(Geerbt von „Control“.)

System_CAPS_pubmethodSetTraceData(Object, Object)

Legt die Ablaufverfolgungsdaten für die Entwurfszeit-Verfolgung von Daten unter Verwendung der Trace-Datenschlüssel und den Trace-Wert.(Geerbt von „Control“.)

System_CAPS_pubmethodSetTraceData(Object, Object, Object)

Legt die Ablaufverfolgungsdaten für die Entwurfszeit-Verfolgung von Renderingdaten, indem Sie das verfolgte Objekt der Trace-Datenschlüssel und den Trace-Wert.(Geerbt von „Control“.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

System_CAPS_protmethodTrackViewState()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Verfolgt Änderungen am Ansichtszustand auf die ObjectDataSource steuern, sodass sie in gespeichert werden, können die System.Web.UI.StateBag Objekt.(Überschreibt Control.TrackViewState().)

System_CAPS_pubmethodUpdate()

Führt einen Aktualisierungsvorgang durch Aufrufen der Methode, die identifizierte der UpdateMethod -Eigenschaft und aller Parameter in der UpdateParameters Auflistung.

NameBeschreibung
System_CAPS_pubeventDataBinding

Tritt auf, wenn das Steuerelement an eine Datenquelle bindet.(Geerbt von „Control“.)

System_CAPS_pubeventDeleted

Tritt auf, wenn ein Delete Vorgang wurde abgeschlossen.

System_CAPS_pubeventDeleting

Tritt ein, bevor ein Delete Vorgang.

System_CAPS_pubeventDisposed

Tritt auf, wenn ein Steuerelement aus dem Speicher freigegeben wird, die ist die letzte Phase des Lebenszyklus der ASP.NET-Seite angefordert wird.(Geerbt von „Control“.)

System_CAPS_pubeventFiltering

Tritt auf, bevor ein.

System_CAPS_pubeventInit

Tritt auf, wenn das Steuerelement initialisiert wird, ist der erste Schritt im Lebenszyklus.(Geerbt von „Control“.)

System_CAPS_pubeventInserted

Tritt auf, wenn ein Insert Vorgang wurde abgeschlossen.

System_CAPS_pubeventInserting

Tritt ein, bevor ein Insert Vorgang.

System_CAPS_pubeventLoad

Tritt auf, wenn das Steuerelement geladen wird die Page Objekt.(Geerbt von „Control“.)

System_CAPS_pubeventObjectCreated

Tritt ein, nachdem das Objekt, das identifizierte die TypeName Eigenschaft erstellt wird.

System_CAPS_pubeventObjectCreating

Tritt ein, bevor das Objekt, das identifizierte die TypeName Eigenschaft erstellt wird.

System_CAPS_pubeventObjectDisposing

Tritt ein, bevor das Objekt, das identifizierte die TypeName Eigenschaft wird verworfen.

System_CAPS_pubeventPreRender

Tritt ein, nachdem die Control Objekt ist geladen, jedoch vor dem Rendern.(Geerbt von „Control“.)

System_CAPS_pubeventSelected

Tritt auf, wenn ein Select Vorgang wurde abgeschlossen.

System_CAPS_pubeventSelecting

Tritt ein, bevor ein Select Vorgang.

System_CAPS_pubeventUnload

Tritt auf, wenn das Steuerelement aus dem Speicher entladen wird.(Geerbt von „Control“.)

System_CAPS_pubeventUpdated

Tritt auf, wenn ein Update Vorgang wurde abgeschlossen.

System_CAPS_pubeventUpdating

Tritt ein, bevor ein Update Vorgang.

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_priveventIDataSource.DataSourceChanged

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Tritt auf, wenn ein Datenquellen-Steuerelement auf eine Weise geändert wurde, die von datengebundenen Steuerelementen betrifft.(Geerbt von „DataSourceControl“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIListSource.GetList()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft eine Liste der Datenquellen-Steuerelemente, die als Quellen für Listen mit Daten verwendet werden kann.(Geerbt von „DataSourceControl“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIControlDesignerAccessor.GetDesignModeState()

Eine Beschreibung dieses Elements finden Sie unter IControlDesignerAccessor.GetDesignModeState.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIControlDesignerAccessor.SetDesignModeState(IDictionary)

Eine Beschreibung dieses Elements finden Sie unter IControlDesignerAccessor.SetDesignModeState.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIControlDesignerAccessor.SetOwnerControl(Control)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Eine Beschreibung dieses Elements finden Sie unter IControlDesignerAccessor.SetOwnerControl.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIDataSource.GetView(String)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft die benannte DataSourceView zugeordnete Objekt der DataSourceControl Steuerelement. Einige Datenquellensteuerelemente unterstützen nur eine Ansicht, während andere mehrere unterstützen.(Geerbt von „DataSourceControl“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIDataSource.GetViewNames()

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Ruft eine Auflistung von Namen zurück DataSourceView Objekte zugeordnet sind und die DataSourceControl Steuerelement.(Geerbt von „DataSourceControl“.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIParserAccessor.AddParsedSubObject(Object)

Eine Beschreibung dieses Elements finden Sie unter IParserAccessor.AddParsedSubObject.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIListSource.ContainsListCollection

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Gibt an, ob das Datenquellen-Steuerelement eine oder mehrere Listen mit Daten zugeordnet ist.(Geerbt von „DataSourceControl“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIControlBuilderAccessor.ControlBuilder

Eine Beschreibung dieses Elements finden Sie unter IControlBuilderAccessor.ControlBuilder.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIControlDesignerAccessor.UserData

Eine Beschreibung dieses Elements finden Sie unter IControlDesignerAccessor.UserData.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIDataBindingsAccessor.DataBindings

Eine Beschreibung dieses Elements finden Sie unter IDataBindingsAccessor.DataBindings.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIDataBindingsAccessor.HasDataBindings

Eine Beschreibung dieses Elements finden Sie unter IDataBindingsAccessor.HasDataBindings.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIExpressionsAccessor.Expressions

Eine Beschreibung dieses Elements finden Sie unter IExpressionsAccessor.Expressions.(Geerbt von „Control“.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIExpressionsAccessor.HasExpressions

Eine Beschreibung dieses Elements finden Sie unter IExpressionsAccessor.HasExpressions.(Geerbt von „Control“.)

NameBeschreibung
System_CAPS_pubmethodFindDataSourceControl()

Gibt die Datenquelle, die das Steuerelement für das angegebene Steuerelement zugeordnet ist.(Definiert durch DynamicDataExtensions.)

System_CAPS_pubmethodFindFieldTemplate(String)

Gibt die Feldvorlage für die angegebene Spalte in das angegebene Steuerelement Benennungscontainer zurück.(Definiert durch DynamicDataExtensions.)

System_CAPS_pubmethodFindMetaTable()

Gibt das Metatabelle für das enthaltende Datensteuerelement zurück.(Definiert durch DynamicDataExtensions.)

System_CAPS_pubmethodGetDefaultValues()

Überladen. Ruft die Auflistung der Standardwerte für die angegebene Datenquelle ab.(Definiert durch DynamicDataExtensions.)

System_CAPS_pubmethodGetMetaTable()

Überladen. Ruft die Metadaten für eine Tabelle in das angegebene Objekt.(Definiert durch DynamicDataExtensions.)

System_CAPS_pubmethodTryGetMetaTable(MetaTable)

Überladen. Bestimmt, ob Tabellenmetadaten verfügbar sind.(Definiert durch DynamicDataExtensions.)

ObjectDataSource-Steuerelement verhält sich mit einer Klasse, die Sie erstellen. Erstellen, die Daten abrufen und aktualisieren und Sie geben die Namen dieser Methoden dem ObjectDataSource-Steuerelement im Markup. Während der Serververarbeitung Rendering oder Postbacks, ruft ObjectDataSource die Methoden auf, die Sie angegeben haben.

Es gibt kein visuelles Rendering des ObjectDataSource-Steuerelements. Daher unterstützt die ObjectDataSource keine visuellen Features, z. B. die EnableTheming-Eigenschaft oder die SkinID-Eigenschaft.

Ein sehr häufiges Anwendungsdesign besteht in der Trennung der Präsentationsschicht von der Geschäftslogik und der Kapselung der Geschäftslogik in Geschäftsobjekten. Diese Geschäftsobjekte bilden eine eigene Schicht zwischen der Präsentationsschicht und der Datenschicht, wodurch sich eine dreischichtige Anwendungsarchitektur ergibt. Das ObjectDataSource-Steuerelement ermöglicht es Entwicklern, ein ASP.NET-Datenquellen-Steuerelement zu verwenden und dabei eine dreischichtige Anwendungsarchitektur beizubehalten.

Das ObjectDataSource-Steuerelement verwendet die Reflektion, um Instanzen von Geschäftsobjekten zu erstellen und Methoden für diese aufzurufen, um Daten abzurufen, zu aktualisieren, einzufügen und zu löschen. Die TypeName-Eigenschaft gibt den Namen der von der ObjectDataSource verwendeten Klasse an. Das ObjectDataSource-Steuerelement erstellt und zerstört eine Instanz der Klasse für jeden Methodenaufruf. Es enthält nicht das Objekt im Speicher für die Lebensdauer der Webanfrage. Dies stellt eine ernsthafte Erwägung dar, wenn das verwendete Geschäftsobjekt viele Ressourcen erfordert oder das Erstellen und Zerstören in anderem Sinne aufwendig ist. Die Verwendung eines Objekts mit hohem Aufwand bildet möglicherweise nicht die optimale Entwurfsoption, jedoch können Sie den Lebenszyklus des Objekts mit den Ereignissen ObjectCreating, ObjectCreated und ObjectDisposing steuern.

System_CAPS_noteHinweis

Die von den Eigenschaften SelectMethod, UpdateMethod, InsertMethod und DeleteMethod angegebenen Methoden können Instanzmethoden oder static-Methoden (Shared-Methoden in Visual Basic) sein. Wenn die Methoden static (Shared in Visual Basic) sind, wird keine Instanz des Geschäftsobjekts erstellt, und die Ereignisse ObjectCreating, ObjectCreated und ObjectDisposing werden nicht ausgelöst.

Um Daten aus einem Geschäftsobjekt abzurufen, legen Sie die SelectMethod-Eigenschaft auf den Namen der Methode fest die Daten abruft. Wenn die Methode kein IEnumerable-Objekt oder DataSet-Objekt zurückgibt, wird das Objekt von der Laufzeit mit einer IEnumerable umschlossen. Wenn die Methodensignatur Parameter aufweist, können Sie der SelectParameters-Auflistung Parameter-Objekte hinzufügen und diese dann an die Werte binden, die an die von der SelectMethod-Eigenschaft angegebene Methode übergeben werden sollen. Damit das ObjectDataSource-Steuerelement die Parameter, die Parameter muss die Namen und die Typen der Parameter in der Methode übereinstimmen verwendet. Weitere Informationen finden Sie unter Using Parameters with the ObjectDataSource Control.

Das ObjectDataSource-Steuerelement ruft Daten immer dann ab, wenn die Select-Methode aufgerufen wird. Diese Methode ermöglicht den programmgesteuerten Zugriff auf die Methode, die von der SelectMethod-Eigenschaft angegeben wird. Die von der SelectMethod-Eigenschaft angegebene Methode wird automatisch von an die ObjectDataSource gebundenen Steuerelementen aufgerufen, wenn deren DataBind-Methode aufgerufen wird. Wenn Sie die DataSourceID-Eigenschaft auf ein datengebundenes Steuerelement festlegen, wird das Steuerelement bei Bedarf automatisch an Daten aus der Datenquelle gebunden. Das Festlegen der DataSourceID-Eigenschaft stellt die empfohlene Methode für das Binden eines ObjectDataSource-Steuerelements an ein datengebundenes Steuerelement dar. Sie können auch die DataSource-Eigenschaft festlegen, doch müssen Sie in diesem Fall explizit die DataBind-Methode des datengebundenen Steuerelements aufrufen. Sie können die Select-Methode jederzeit programmgesteuert aufrufen, um Daten abzurufen.

Weitere Informationen über das Binden von datengebundenen Steuerelementen an Datenquellensteuerelemente finden Sie unter Binding to Data Using a Data Source Control.

Je nach den Funktionen des vom ObjectDataSource-Steuerelement verwendeten Geschäftsobjekts können Sie Datenvorgänge ausführen, z. B. Aktualisierungen sowie Einfüge- und Löschvorgänge. Um diese Datenvorgänge ausführen zu können, legen Sie den entsprechenden Methodennamen sowie möglicherweise zugeordnete Parameter für den auszuführenden Vorgang fest. Legen Sie z. B. bei einem Aktualisierungsvorgang die UpdateMethod-Eigenschaft auf den Namen der Geschäftsobjektmethode fest, die Aktualisierungen ausführt, und fügen Sie der UpdateParameters-Auflistung ggf. erforderliche Parameter hinzu. Wenn das ObjectDataSource-Steuerelement einem datengebundenen Steuerelement zugeordnet wurde, werden die Parameter von dem datengebundenen Steuerelement hinzugefügt. In diesem Fall müssen Sie sicherstellen, dass die Parameternamen der Methode die Feldnamen im datengebundenen Steuerelement übereinstimmen. Die Aktualisierung wird ausgeführt, wenn die Update-Methode explizit von Code oder automatisch von einem datengebundenen Steuerelement aufgerufen wird. Dieses allgemeine Muster wird auch bei Delete-Vorgängen und Insert-Vorgängen eingehalten. Bei Geschäftsobjekten wird davon ausgegangen, dass sie diesen Typ von Datenvorgängen datensatzweise und nicht stapelweise ausführen.

Das ObjectDataSource-Steuerelement kann von der SelectMethod-Eigenschaft abgerufene Daten filtern, wenn die Daten als DataSet-Objekt oder DataTable-Objekt zurückgegeben werden. Sie können die FilterExpression-Eigenschaft unter Verwendung einer Formatzeichenfolgensyntax auf einen Filterausdruck festlegen und Werte im Ausdruck an Parameter binden, die in der FilterParameters-Auflistung angegeben werden.

Obwohl ObjectDataSource nicht die Instanz des Geschäftsobjekts über mehrere Anforderungen beibehält, kann das Ergebnis des Aufrufs der Methode zwischenspeichern gekennzeichnet durch die Eigenschaft SelectMethod. Während die Daten zwischengespeichert werden, geben nachfolgende Aufrufe der Select-Methode die zwischengespeicherten Daten zurück, sodass nicht mittels Reflektion das Geschäftsobjekt erstellt und dessen SelectMethod aufgerufen wird. Durch die Zwischenspeicherung können Sie das Erstellen des Objekts und das Aufrufen seiner Datenmethode vermeiden, benötigen dafür aber zusätzlichen Speicher auf dem Webserver. Die ObjectDataSource führt automatisch eine Zwischenspeicherung von Daten durch, wenn die EnableCaching-Eigenschaft auf true und die CacheDuration-Eigenschaft auf die Anzahl der Sekunden festgelegt wird, die der Cache zum Speichern von Daten benötigt, bevor der Cache verworfen wird. Sie können auch eine CacheExpirationPolicy-Eigenschaft und eine optionale SqlCacheDependency-Eigenschaft angeben. Das ObjectDataSource-Steuerelement ermöglicht das Zwischenspeichern aller Datentypen. Sie sollten jedoch keine Objekte zwischenspeichern, die Ressourcen oder Zustände beibehalten, die nicht für die Bearbeitung mehrerer Anforderungen verwendet werden können (z. B. ein geöffnetes SqlDataReader-Objekt), da ein und dieselbe Instanz des Objekts für die Bearbeitung mehrerer Anforderungen verwendet wird.

In der folgenden Tabelle werden die Features des ObjectDataSource-Steuerelements beschrieben.

Funktion

Voraussetzungen

Auswählen

Legen Sie die SelectMethod-Eigenschaft auf den Namen der Geschäftsobjektmethode fest, die Daten auswählt, und schließen Sie dabei alle erforderlichen Parameter in der SelectParameters-Auflistung programmgesteuert oder mittels eines datengebundenen Steuerelements ein.

Sortieren

Legen Sie die SortParameterName-Eigenschaft auf den Namen des Parameters in der SelectMethod-Methode mit den Sortierungskriterien fest.

Filtern

Legen Sie die FilterExpression-Eigenschaft auf einen Filterausdruck fest, und fügen Sie der FilterParameters-Auflistung optional beliebige Parameter hinzu, um die Daten beim Aufruf der Select-Methode zu filtern. Die von der SelectMethod-Eigenschaft angegebene Methode muss DataSet oder DataTable zurückgeben.

Paging

Das Paging von Datenquellen wird unterstützt, sofern die SelectMethod-Methode Parameter für die maximale Anzahl der abzurufenden Datensätze und den Index des ersten abzurufenden Datensatzes enthält. Die Namen dieser Parameter müssen in der MaximumRowsParameterName-Eigenschaft bzw. der StartRowIndexParameterName-Eigenschaft festgelegt werden. Ein datengebundenes Steuerelement kann das Paging möglicherweise auch dann selbst ausführen, wenn das ObjectDataSource-Steuerelement das direkte Paging in der von der SelectMethod-Eigenschaft angegebenen Methode nicht unterstützt. Dieser Vorgang kann vom datengebundenen Steuerelement nur dann ausgeführt werden, wenn die von der SelectMethod-Eigenschaft angegebene Methode ein Objekt zurückgibt, das die ICollection-Schnittstelle implementiert.

Aktualisieren

Legen Sie die UpdateMethod-Eigenschaft auf den Namen der Geschäftsobjektmethode fest, die Daten aktualisiert, und schließen Sie dabei sämtliche erforderlichen Parameter in der UpdateParameters-Auflistung ein.

Löschen

Legen Sie die DeleteMethod-Eigenschaft auf den Namen der Geschäftsobjektmethode oder Funktion fest, die Daten löscht, und schließen Sie dabei sämtliche erforderlichen Parameter in der DeleteParameters-Auflistung ein.

Einfügen

Legen Sie die InsertMethod-Eigenschaft auf den Namen der Geschäftsobjektmethode oder Funktion fest, die Daten einfügt, und schließen Sie dabei sämtliche erforderlichen Parameter in der InsertParameters-Auflistung ein.

Zwischenspeicherung

Legen Sie die EnableCaching-Eigenschaft auf true und die CacheDuration-Eigenschaft sowie die CacheExpirationPolicy-Eigenschaft je nach Zwischenspeicherungsverhalten fest, das für die zwischengespeicherten Daten gewünscht wird.

System_CAPS_noteHinweis

Wenn Sie die ObjectDataSource-Klasse verwenden, um Daten zu aktualisieren oder einzufügen, werden Zeichenfolgen, die beim Client eingegeben werden, nicht automatisch vom Clientkulturformat in das Serverkulturformat konvertiert. Die Clientkultur könnte z. B. TT/MM/JJJJ als Datumsformat angeben, und das Datumsformat auf dem Server könnte MM/TT/JJJJ sein. In diesem Fall würde "5. Oktober 2009" in einem TextBox-Steuerelement als 5/10/2009 eingegeben, aber als der 10. Mai 2009 interpretiert werden. 15. Oktober 2009 würde als 15/10/2009 eingegeben und als ungültiges Datum abgelehnt werden.

Wie alle Datenquellen-Steuerelemente wird das ObjectDataSource-Steuerelement einer Datenquellen-Ansichtsklasse zugeordnet. Während das ObjectDataSource-Steuerelement die Schnittstelle bildet, die vom Seitenentwickler für die Arbeit mit den Daten verwendet wird, bildet die ObjectDataSourceView-Klasse die Schnittstelle, die von datengebundenen Steuerelementen verwendet wird. Zudem beschreibt die ObjectDataSourceView-Klasse die Funktionen des Datenquellen-Steuerelements und führt die eigentliche Arbeit aus. Das ObjectDataSource-Steuerelement verfügt über nur eine zugeordnete ObjectDataSourceView, die stets mit DefaultView bezeichnet wird. Während das ObjectDataSourceView-Objekt von der GetView-Methode verfügbar gemacht wird, werden viele seiner Eigenschaften und Methoden umschlossen und direkt vom ObjectDataSource-Steuerelement verfügbar gemacht. Im Hintergrund führt das ObjectDataSourceView-Objekt sämtliche Datenvorgänge aus, einschließlich Abrufen, Einfügen, Aktualisieren, Löschen, Filtern und Sortieren der Daten. Weitere Informationen finden Sie unter ObjectDataSourceView.

Sie können das ObjectDataSource-Steuerelement mit einer LINQ to SQL-Klasse verwenden. Legen Sie dazu die TypeName-Eigenschaft auf den Namen der Datenkontextklasse fest. Legen Sie außerdem die Methoden SelectMethod, UpdateMethod, InsertMethod und DeleteMethod auf die Methoden in der Datenkontextklasse fest, die die entsprechenden Vorgänge ausführen. Sie müssen einen Ereignishandler für das ObjectDisposing-Ereignis erstellen, um das Freigeben der Datenkontextklasse abzubrechen. Dieser Schritt ist erforderlich, da LINQ to SQL die verzögerte Ausführung unterstützt, während das ObjectDataSource-Steuerelement versucht, den Datenkontext nach dem Auswahlvorgang freizugeben. Weitere Informationen zum Erstellen von LINQ to SQL-Klassen finden Sie unter How to: Create LINQ to SQL Classes in a Web Project. Ein Beispiel zum Abbrechen der Freigabe für die Datenkontextklasse finden Sie unter dem ObjectDisposing-Ereignis.

Sie können das ObjectDataSource-Steuerelement mit Entity Framework auch verwenden. Weitere Informationen finden Sie unter Verwenden Entity Framework und des ObjectDataSource-Steuerelements.

<asp:ObjectDataSource
    CacheDuration="string|Infinite"
    CacheExpirationPolicy="Absolute|Sliding"
    CacheKeyDependency="string"
    ConflictDetection="OverwriteChanges|CompareAllValues"
    ConvertNullToDBNull="True|False"
    DataObjectTypeName="string"
    DeleteMethod="string"
    EnableCaching="True|False"
    EnablePaging="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    FilterExpression="string"
    ID="string"
    InsertMethod="string"
    MaximumRowsParameterName="string"
    OldValuesParameterFormatString="string"
    OnDataBinding="DataBinding event handler"
    OnDeleted="Deleted event handler"
    OnDeleting="Deleting event handler"
    OnDisposed="Disposed event handler"
    OnFiltering="Filtering event handler"
    OnInit="Init event handler"
    OnInserted="Inserted event handler"
    OnInserting="Inserting event handler"
    OnLoad="Load event handler"
    OnObjectCreated="ObjectCreated event handler"
    OnObjectCreating="ObjectCreating event handler"
    OnObjectDisposing="ObjectDisposing event handler"
    OnPreRender="PreRender event handler"
    OnSelected="Selected event handler"
    OnSelecting="Selecting event handler"
    OnUnload="Unload event handler"
    OnUpdated="Updated event handler"
    OnUpdating="Updating event handler"
    runat="server"
    SelectCountMethod="string"
    SelectMethod="string"
    SkinID="string"
    SortParameterName="string"
    SqlCacheDependency="string"
    StartRowIndexParameterName="string"
    TypeName="string"
    UpdateMethod="string"
    Visible="True|False"
>
        <DeleteParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </DeleteParameters>
        <FilterParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </FilterParameters>
        <InsertParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </InsertParameters>
        <SelectParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </SelectParameters>
        <UpdateParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </UpdateParameters>
</asp:ObjectDataSource>

Zu diesem Thema steht ein Visual Studio-Websiteprojekt mit Quellcode zur Verfügung: Download.

Dieser Abschnitt wird von ObjectDataSource im Markup einer ASPX-Seite an und er wird die Geschäftsobjekte an, die die Klasse verwendet. Im Beispiel ist die ASPX-Seite. Es enthält ein GridView-Steuerelement, das an ein ObjectDataSource-Steuerelement gebunden wird. Das ObjectDataSource-Steuerelementmarkup gibt den Namen des Geschäftsobjekts sowie der Geschäftsobjektmethode zum Aufruf, um Daten abzurufen.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="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">
<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:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          typename="Samples.AspNet.CS.EmployeeLogic" />

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

Im folgenden Beispiel wird das Geschäftsobjekt dass das ObjectDataSource-Steuerelement in der ASPX-Seiten-Verwendung an. (Viele andere ObjectDataSource Codebeispiele verwenden dieses Geschäftsobjekt auch.) Das Beispiel besteht aus den folgenden beiden Grundkursen:

  • Die EmployeeLogic-Klasse ist die Geschäftslogikklasse, die ObjectDataSource verwendet.

  • Die NorthwindEmployee-Klasse definiert das Datenobjekt, das von der GetAllEmployees-Methode der EmployeeLogic-Klasse zurückgegeben wird.

Eine zusätzliche NorthwindDataException-Klasse wird aus Gründen der Benutzerfreundlichkeit bereitgestellt.

Diese Beispielklassen verwenden die Datenbank Northwind Traders, die in Microsoft SQL Server und Microsoft Access enthalten ist. Ein vollständiges Arbeitsbeispiel müssen Sie diese Klassen mit dem ASPX-Seiten-Beispiel kompilieren und verwenden, das bereitgestellt wird. Informationen zum Installieren der Datenbank Northwind Traders finden Sie unter How to: Install Sample Databases.

namespace Samples.AspNet.CS {

using System;
using System.Collections;
using System.Collections.Specialized;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI;
using System.Web.UI.WebControls;
  //
  // EmployeeLogic is a stateless business object that encapsulates
  // the operations one can perform on a NorthwindEmployee object.
  //
  public class EmployeeLogic {

    // Returns a collection of NorthwindEmployee objects.
    public static ICollection GetAllEmployees () {
      ArrayList al = new ArrayList();

      ConnectionStringSettings cts = ConfigurationManager.ConnectionStrings["NorthwindConnection"];

      SqlDataSource sds
        = new SqlDataSource(cts.ConnectionString, "SELECT EmployeeID FROM Employees");

      try {

        IEnumerable IDs = sds.Select(DataSourceSelectArguments.Empty);

        // Iterate through the Enumeration and create a
        // NorthwindEmployee object for each ID.
        foreach (DataRowView row in IDs) {
          string id = row["EmployeeID"].ToString();
          NorthwindEmployee nwe = new NorthwindEmployee(id);
          // Add the NorthwindEmployee object to the collection.
          al.Add(nwe);
        }
      }
      finally {
        // If anything strange happens, clean up.
        sds.Dispose();
      }

      return al;
    }
    public static NorthwindEmployee GetEmployee(object anID) {
      return new NorthwindEmployee(anID);
    }

    public static void UpdateEmployeeInfo(NorthwindEmployee ne) {
      bool retval = ne.Save();
      if (! retval) { throw new NorthwindDataException("UpdateEmployee failed."); }
    }

    public static void DeleteEmployee(NorthwindEmployee ne) { }

  }

  public class NorthwindEmployee {

    public NorthwindEmployee () {
      ID = DBNull.Value;
      lastName = "";
      firstName = "";
      title="";
      titleOfCourtesy = "";
      reportsTo = -1;
    }

    public NorthwindEmployee (object anID) {
      this.ID = anID;

      ConnectionStringSettings cts = ConfigurationManager.ConnectionStrings["NorthwindConnection"];

		SqlConnection conn = new SqlConnection (cts.ConnectionString);
      SqlCommand sc =
        new SqlCommand(" SELECT FirstName,LastName,Title,TitleOfCourtesy,ReportsTo " +
                       " FROM Employees " +
                       " WHERE EmployeeID = @empId",
                       conn);
      // Add the employee ID parameter and set its value.
      sc.Parameters.Add(new SqlParameter("@empId",SqlDbType.Int)).Value = Int32.Parse(anID.ToString());
      SqlDataReader sdr = null;

      try {
        conn.Open();
        sdr = sc.ExecuteReader();

        // This is not a while loop. It only loops once.
        if (sdr != null && sdr.Read()) {
          // The IEnumerable contains DataRowView objects.
          this.firstName        = sdr["FirstName"].ToString();
          this.lastName         = sdr["LastName"].ToString();
          this.title            = sdr["Title"].ToString();
          this.titleOfCourtesy  = sdr["TitleOfCourtesy"].ToString();
          if (! sdr.IsDBNull(4)) {
            this.reportsTo        = sdr.GetInt32(4);
          }
        }
        else {
          throw new NorthwindDataException("Data not loaded for employee id.");
        }
      }
      finally {
        try {
          if (sdr != null) sdr.Close();
          conn.Close();
        }
        catch (SqlException) {
          // Log an event in the Application Event Log.
          throw;
        }
      }
    }

    private object ID;

    private string lastName;
    public string LastName {
      get { return lastName; }
      set { lastName = value; }
    }

    private string firstName;
    public string FirstName {
      get { return firstName; }
      set { firstName = value;  }
    }

    private string title;
    public String Title {
      get { return title; }
      set { title = value; }
    }

    private string titleOfCourtesy;
    public string Courtesy {
      get { return titleOfCourtesy; }
      set { titleOfCourtesy = value; }
    }

    private int    reportsTo;
    public int Supervisor {
      get { return reportsTo; }
      set { reportsTo = value; }
    }

    public bool Save () {
      return true;
    }
  }

  internal class NorthwindDataException: Exception {
    public NorthwindDataException(string msg) : base (msg) { }
  }
}

.NET Framework
Verfügbar seit 2.0

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: