LinqDataSource.ContextTypeName Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de naam op van het type dat de eigenschap bevat waarvan de waarde de gegevens bevat die u wilt ophalen.
public:
property System::String ^ ContextTypeName { System::String ^ get(); void set(System::String ^ value); };
public:
virtual property System::String ^ ContextTypeName { System::String ^ get(); void set(System::String ^ value); };
public string ContextTypeName { get; set; }
public override string ContextTypeName { get; set; }
member this.ContextTypeName : string with get, set
Public Property ContextTypeName As String
Public Overrides Property ContextTypeName As String
Waarde van eigenschap
De naam van de klasse waaruit gegevens moeten worden opgehaald.
Voorbeelden
In het volgende voorbeeld ziet u hoe u de ContextTypeName eigenschap instelt op een klasse die een matrix met tekenreeksen bevat. Ook ziet u hoe u de eigenschap instelt op een klasse (gegenereerd door de O/R Designer) die een database vertegenwoordigt.
<!-- Retrieve and display data from array of string values -->
<asp:LinqDataSource
ContextTypeName="MovieLibrary"
TableName="AvailableGenres"
ID="LinqDataSource1"
runat="server">
</asp:LinqDataSource>
<asp:DropDownList
DataSourceID="LinqDataSource1"
runat="server"
ID="DropDownList1">
</asp:DropDownList>
<!-- Retrieve and display data from database -->
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Movies"
Select="Title"
ID="LinqDataSource2"
runat="server">
</asp:LinqDataSource>
<asp:DropDownList
DataSourceID="LinqDataSource2"
runat="server"
ID="DropDownList2">
</asp:DropDownList>
<!-- Retrieve and display data from array of string values -->
<asp:LinqDataSource
ContextTypeName="MovieLibrary"
TableName="AvailableGenres"
ID="LinqDataSource1"
runat="server">
</asp:LinqDataSource>
<asp:DropDownList
DataSourceID="LinqDataSource1"
runat="server"
ID="DropDownList1">
</asp:DropDownList>
<!-- Retrieve and display data from database -->
<asp:LinqDataSource
ContextTypeName="ExampleDataContext"
TableName="Movies"
Select="Title"
ID="LinqDataSource2"
runat="server">
</asp:LinqDataSource>
<asp:DropDownList
DataSourceID="LinqDataSource2"
runat="server"
ID="DropDownList2">
</asp:DropDownList>
De klasse die ExampleDataContext de databasetabel vertegenwoordigt, wordt niet weergegeven in dit voorbeeld. Voor dit voorbeeld moet u deze klasse maken door een LINQ toe te voegen aan de SQL-klasse Example.dbml en een tabel met de naam Movie naar de O/R Designer te slepen. Er wordt een klasse ExampleDataContext met een benoemde Movies eigenschap gegenereerd.
In het volgende voorbeeld ziet u de klasse met de naam MovieLibrary waarnaar wordt verwezen in het LinqDataSource besturingselement.
public class MovieLibrary
{
string[] _availableGenres = { "Comedy", "Drama", "Romance" };
public MovieLibrary()
{
}
public string[] AvailableGenres
{
get
{
return _availableGenres;
}
}
}
Public Class MovieLibrary
Dim _availableGenres() As String = {"Comedy", "Drama", "Romance"}
Public ReadOnly Property AvailableGenres() As String()
Get
Return _availableGenres
End Get
End Property
End Class
Opmerkingen
Wanneer u het LinqDataSource besturingselement gebruikt om gegevens op te halen uit een gegevensverzameling in het geheugen of een database, moet u twee eigenschappen opgeven. De eerste is een gegevenscontextklasse die de gegevensbron vertegenwoordigt. De tweede is een eigenschap in de gegevenscontextklasse die de gegevens bevat. U stelt de ContextTypeName eigenschap in op de naam van de gegevenscontextklasse en u stelt de TableName eigenschap in op de gegevensverzameling die de gegevens bevat.
Wanneer u bijvoorbeeld gegevens ophaalt uit een database, stelt u de ContextTypeName eigenschap in op de naam van de klasse die de database vertegenwoordigt. Stel de TableName eigenschap ook in op de eigenschap die de tabel in de database vertegenwoordigt. Als u klassen wilt genereren op basis van een database, gebruikt u O/R Designer of het hulpprogramma SqlMetal.exe om deze klassen automatisch te genereren.
Wanneer u gegevens ophaalt uit een gegevensverzameling in het geheugen, zoals een matrix, stelt u de ContextTypeName eigenschap in op de naam van de klasse die de matrixeigenschap bevat. Stel vervolgens de TableName eigenschap in op de eigenschap die de matrix ophaalt.
Als u automatische bewerkingen voor bijwerken, invoegen of verwijderen wilt inschakelen via het LinqDataSource besturingselement, moet de klasse die aan de ContextTypeName eigenschap is toegewezen, worden afgeleid van DataContext. Bovendien moet de eigenschap die aan de TableName eigenschap is toegewezen, worden afgeleid van Table<TEntity>. Als u automatische update-, invoeg- of verwijderbewerkingen niet hoeft in te schakelen, kunt u de naam van elk type klasse toewijzen aan de ContextTypeName eigenschap.
Zie de Result eigenschap voor informatie over het selecteren van gegevens uit een exemplaar van een klasse.