Condividi tramite


LinqDataSource.ContextTypeName Proprietà

Definizione

Ottiene o imposta il nome del tipo che contiene la proprietà il cui valore include i dati che si desidera recuperare.

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

Valore della proprietà

Nome della classe da cui recuperare dati.

Esempio

Nell'esempio seguente viene illustrato come impostare la ContextTypeName proprietà su una classe contenente una matrice di stringhe. Viene inoltre illustrato come impostare la proprietà su una classe (generata dalla finestra di progettazione O/R) che rappresenta un database.

<!-- 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>

La classe denominata ExampleDataContext che rappresenta la tabella di database non viene visualizzata in questo esempio. Per il funzionamento di questo esempio, è necessario creare questa classe aggiungendo una classe LINQ To SQL denominata Example.dbml e trascinando una tabella denominata Movie nella finestra di progettazione O/R. Viene generata una classe denominata con una proprietà denominata ExampleDataContextMovies .

Nell'esempio seguente viene illustrata la classe denominata MovieLibrary a cui viene fatto riferimento nel LinqDataSource controllo.

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

Commenti

Quando si usa il LinqDataSource controllo per recuperare i dati da una raccolta dati in memoria o da un database, è necessario specificare due proprietà. La prima è una classe di contesto dati che rappresenta l'origine dati. Il secondo è una proprietà nella classe di contesto dei dati che contiene i dati. Impostare la ContextTypeName proprietà sul nome della classe di contesto dei dati e impostare la TableName proprietà sulla raccolta dati contenente i dati.

Ad esempio, quando si recuperano dati da un database, impostare la ContextTypeName proprietà sul nome della classe che rappresenta il database. Impostare anche la TableName proprietà sulla proprietà che rappresenta la tabella nel database. Per generare classi da un database, usare O/R Designer o l'utilità SqlMetal.exe per generare automaticamente tali classi.

Quando si recuperano dati da una raccolta dati in memoria, ad esempio una matrice, impostare la ContextTypeName proprietà sul nome della classe che contiene la proprietà array. Impostare quindi la TableName proprietà sulla proprietà che ottiene la matrice.

Per abilitare le operazioni di aggiornamento, inserimento o eliminazione automatica tramite il LinqDataSource controllo, la classe assegnata alla ContextTypeName proprietà deve derivare da DataContext. Inoltre, la proprietà assegnata alla TableName proprietà deve derivare da Table<TEntity>. Se non è necessario abilitare le operazioni di aggiornamento, inserimento o eliminazione automatiche, è possibile assegnare il nome di qualsiasi tipo di classe alla ContextTypeName proprietà.

Per informazioni su come selezionare i dati da un'istanza di una classe, vedere la Result proprietà .

Si applica a

Vedi anche