LinqDataSource.ContextTypeName Propriedade

Definição

Recebe ou define o nome do tipo que contém a propriedade cujo valor tem os dados que pretende recuperar.

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

Valor de Propriedade

O nome da classe para recolher dados.

Exemplos

O exemplo seguinte mostra como definir a ContextTypeName propriedade para uma classe que contém um array de cadeias. Também mostra como definir a propriedade para uma classe (gerada pelo Designer O/R) que representa uma base de dados.

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

A classe nomeada ExampleDataContext que representa a tabela da base de dados não é mostrada neste exemplo. Para que este exemplo funcione, deve criar esta classe adicionando uma classe LINQ To SQL chamada Example.dbml e arrastando uma tabela chamada Movie para o O/R Designer. Uma classe nomeada ExampleDataContext com uma propriedade nomeada Movies é gerada.

O exemplo seguinte mostra a classe nomeada MovieLibrary que é referenciada no LinqDataSource controlo.

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

Observações

Quando usar o LinqDataSource controlo para recuperar dados de uma coleção de dados em memória ou de uma base de dados, deve especificar duas propriedades. A primeira é uma classe de contexto de dados que representa a fonte de dados. A segunda é uma propriedade na classe de contexto de dados que contém os dados. Define a ContextTypeName propriedade para o nome da classe de contexto de dados e define a TableName propriedade para a coleção de dados que contém os dados.

Por exemplo, ao recuperar dados de uma base de dados, defina a ContextTypeName propriedade para o nome da classe que representa a base de dados. Também define a TableName propriedade para a propriedade que representa a tabela na base de dados. Para gerar classes a partir de uma base de dados, use o O/R Designer ou a ferramenta SqlMetal.exe para gerar automaticamente essas classes.

Quando recuperar dados de uma coleção de dados em memória, como um array, defina a ContextTypeName propriedade para o nome da classe que contém a propriedade do array. Depois define a TableName propriedade para a propriedade que obtém o array.

Para permitir operações automáticas de atualização, inserção ou eliminação através do LinqDataSource controlo, a classe atribuída à ContextTypeName propriedade deve derivar de DataContext. Além disso, a propriedade atribuída à TableName propriedade deve derivar de Table<TEntity>. Se não precisar de ativar operações automáticas de atualização, inserção ou eliminação, pode atribuir o nome de qualquer tipo de classe à ContextTypeName propriedade.

Para informações sobre como selecionar dados de uma instância de uma classe, veja a Result propriedade.

Aplica-se a

Ver também