ObjectDataSource.SelectParameters Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Auflistung von Parametern ab, die von der durch die SelectMethod Eigenschaft angegebenen Methode verwendet werden.
public:
property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection SelectParameters { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection
Eigenschaftswert
Eine Auflistung von Parametern, die von der von der SelectMethod Eigenschaft angegebenen Methode verwendet werden.
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie ein einzelner Datensatz mithilfe eines ObjectDataSource Steuerelements abgerufen und in einem DetailsView Steuerelement angezeigt wird. Das ObjectDataSource Steuerelement ruft einen bestimmten Mitarbeiterdatensatz ab, indem die GetEmployee Methode der EmployeeLogic Klasse aufgerufen wird. Für die GetEmployee Methode ist ein Mitarbeiter-ID-Parameter erforderlich. Das ObjectDataSource Steuerelement verwendet ein QueryStringParameter Element im Markup, um ein QueryStringParameter Objekt zu erstellen, das den Wert eines angegebenen Abfragezeichenfolgenparameters aus der URL abruft und an die GetEmployee Methode übergeben.
Andere Parameterklassen können verwendet werden, um Werte aus anderen Quellen abzurufen, z. B. Steuerelementeigenschaften, Formularfelder, Cookies, ASP.NET Profildaten oder Sitzungsstatus. Sie können auch ein Parameterobjekt verwenden, das im Markup definiert ist, um einen hartcodierten Wert an die Select-Methode zu übergeben. Weitere Informationen zu verfügbaren Parameterklassen finden Sie unter Verwenden von Parametern mit Datenquellensteuerelementen zum Filtern.
Zum Ausführen dieses Beispiels benötigen Sie Folgendes:
Eine Website mit einer Verbindungszeichenfolge namens
NorthwindConnection"Northwind Traders". Weitere Informationen finden Sie in der ObjectDataSource Klassenübersicht.Die
EmployeeLogicKlasse, die als eine der Codebeispiele für die ObjectDataSource Klassenübersicht angezeigt wird. Die Klassendatei muss sich im Ordner App_Code befinden.Der Beispielcode kann als .aspx Seite ausgeführt werden. Wenn Sie die Seite ohne abfragezeichenfolgenparameter anfordern, wird eine Fehlermeldung angezeigt. Wenn Sie die Seite mithilfe einer Abfragezeichenfolge anfordern, z
?empid=1. B. nach dem Namen der .aspx-Datei, werden die Details für den angeforderten Mitarbeiter angezeigt.
<%@ 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:detailsview
id="DetailsView1"
runat="server"
datasourceid="ObjectDataSource1">
</asp:detailsview>
<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
Security Note: which does not perform validation of input from the client.
Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetEmployee"
typename="Samples.AspNet.CS.EmployeeLogic" >
<selectparameters>
<asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
</selectparameters>
</asp:objectdatasource>
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" Assembly="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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - VB Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:detailsview
id="DetailsView1"
runat="server"
datasourceid="ObjectDataSource1">
</asp:detailsview>
<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
Security Note: which does not perform validation of input from the client.
Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetEmployee"
typename="Samples.AspNet.VB.EmployeeLogic" >
<selectparameters>
<asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
</selectparameters>
</asp:objectdatasource>
</form>
</body>
</html>
Hinweise
Die SelectParameters Eigenschaft ruft die SelectParameters Eigenschaft des ObjectDataSourceView Objekts ab, das dem ObjectDataSource Steuerelement zugeordnet ist.
Sie fügen SelectParameters der Auflistung Parameter deklarativ hinzu, indem Sie das SelectParameters Element oder programmgesteuert im Handler für das Selecting Ereignis verwenden. Zur Laufzeit werden die im SelectParameters Element aufgeführten Parameter zuerst der Auflistung hinzugefügt. Parameter in der Auflistung werden dann vom Handler für das Selecting Ereignis hinzugefügt oder entfernt. Das Selecting Ereignis wird ausgelöst, bevor die Select Methode ausgeführt wird.
Bevor die Select Methode ausgeführt wird, müssen die Namen und Typen der Parameter, die in der SelectParameters Auflistung enthalten sind, mit der Signatur der Methode übereinstimmen, die von der SelectMethod Eigenschaft angegeben wird. Wenn beispielsweise eine select-Methode mit dem Namen GetEmployeesByStateAndAge eine string ganze Zahl als Parameter akzeptiert, muss die SelectParameters Auflistung zwei Parameter enthalten. Der erste Parameter muss in eine Zeichenfolge aufgelöst werden, und der zweite Parameter muss in eine ganze Zahl aufgelöst werden. Beide Parameter können im Markup im SelectParameters Element angegeben werden. Alternativ können sie im Selecting Ereignishandler hinzugefügt werden, oder ein Parameter kann im Markup hinzugefügt werden, und die andere kann programmgesteuert hinzugefügt werden.
Weitere Informationen finden Sie unter Verwenden von Parametern mit dem ObjectDataSource-Steuerelement und der SelectMethod Eigenschaft.
Von Bedeutung
Stellen Sie im Code für den Selecting Ereignishandler oder in der Methode, die von der SelectMethod Eigenschaft angegeben wird, sicher, dass Sie alle Parameterwerte überprüfen, die vom Client empfangen werden.