GridView.DataKeyNames-Eigenschaft
Assembly: System.Web (in system.web.dll)
/** @property */ public String[] get_DataKeyNames () /** @property */ public void set_DataKeyNames (String[] value)
public function get DataKeyNames () : String[] public function set DataKeyNames (value : String[])
Eigenschaftenwert
Ein Array, der die Namen der primären Schlüsselfelder für die in einem GridView-Steuerelement angezeigten Elemente enthält.Legen Sie mithilfe der DataKeyNames-Eigenschaft die Felder fest, die den primären Schlüssel der Datenquelle darstellen.
Hinweis |
|---|
| Um diese Eigenschaft deklarativ festzulegen, verwenden Sie eine durch Kommas getrennte Liste mit Feldnamen. |
Wenn die DataKeyNames-Eigenschaft festgelegt ist, füllt das GridView-Steuerelement automatisch die zugehörige DataKeys-Auflistung mit den Werten aus den angegebenen Feldern auf. Auf diese Weise ist ein benutzerfreundlicher Zugriff auf die primären Schlüssel jeder Zeile gewährleistet.
Hinweis |
|---|
| Das GridView-Steuerelement speichert diese Schlüsselfeldwerte im Steuerelementzustand. Wenn die Werte sensible Informationen enthalten, wird dringend empfohlen, die Ansichtszustandsverschlüsselung zu aktivieren, indem Sie die ViewStateEncryptionMode-Eigenschaft auf ViewStateEncryptionMode.Always festlegen. |
Bei der Verwendung automatisch generierter Feldspalten (durch Festlegen der AutoGenerateColumns-Eigenschaft auf true) stellt das GridView-Steuerelement automatisch sicher, dass die automatisch generierten Feldspalten, die den in der DataKeyNames-Eigenschaft angegebenen Feldern entsprechen, schreibgeschützt sind.
Hinweis |
|---|
| Sie müssen die DataKeyNames-Eigenschaft festlegen, damit die Features des GridView-Steuerelements zum automatischen Aktualisieren und Löschen verfügbar sind. Die Werte dieser Schlüsselfelder werden an das Datenquellensteuerelement übergeben, um die zu aktualisierende bzw. zu löschende Zeile zu bestimmen. |
Wenn die Visible-Eigenschaft eines Spaltenfelds auf false festgelegt ist, wird die Spalte nicht im GridView-Steuerelement angezeigt, und die Daten für die Spalte durchlaufen keine Schleife zum Client. Wenn die Daten für die nicht angezeigte Spalte die Schleife durchlaufen sollen, müssen Sie der DataKeyNames-Eigenschaft den Feldnamen hinzufügen.
Das folgende Codebeispiel veranschaulicht, wie mit der DataKeyNames-Eigenschaft das Schlüsselfeld der Datenquelle festgelegt werden kann.
<%@ Page language="C#" %> <html> <body> <form runat="server"> <h3>GridView Edit Example</h3> <!-- The GridView control automatically sets the columns --> <!-- specified in the datakeynames property as read-only. --> <!-- No input controls are rendered for these columns in --> <!-- edit mode. --> <asp:gridview id="CustomersGridView" datasourceid="CustomersSqlDataSource" autogeneratecolumns="true" autogeneratedeletebutton="true" autogenerateeditbutton="true" datakeynames="CustomerID" runat="server"> </asp:gridview> <!-- This example uses Microsoft SQL Server and connects --> <!-- to the Northwind sample database. Use an ASP.NET --> <!-- expression to retrieve the connection string value --> <!-- from the Web.config file. --> <asp:sqldatasource id="CustomersSqlDataSource" selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]" updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)" deletecommand="Delete from Customers where CustomerID = @CustomerID" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"> </asp:sqldatasource> </form> </body> </html>
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Hinweis