ParameterCollection Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
public ref class ParameterCollection : System::Web::UI::StateManagedCollection
public class ParameterCollection : System.Web.UI.StateManagedCollection
type ParameterCollection = class
inherit StateManagedCollection
Public Class ParameterCollection
Inherits StateManagedCollection
- Herança
Exemplos
O exemplo de código a seguir demonstra como usar um AccessDataSource controle e um FormParameter para exibir informações de um banco de dados do Microsoft Access em um GridView controle . O FormParameter objeto é adicionado à SelectParameters coleção usando o Add método .
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos html ou script. Para obter mais informações, consulte Visão geral de explorações de script.
<%@Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(Object sender, EventArgs e){
// You can add a FormParameter to the AccessDataSource control's
// SelectParameters collection programmatically.
AccessDataSource1.SelectParameters.Clear();
// Security Note: The AccessDataSource uses a FormParameter,
// Security Note: which does not perform validation of input from the client.
// Security Note: To validate the value of the FormParameter,
// Security Note: handle the Selecting event.
FormParameter formParam = new FormParameter("lastname","LastNameBox");
formParam.Type=TypeCode.String;
AccessDataSource1.SelectParameters.Add(formParam);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:accessdatasource
id="AccessDataSource1"
runat="server"
datasourcemode="DataSet"
datafile="Northwind.mdb"
selectcommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate
FROM Orders WHERE EmployeeID =
(SELECT EmployeeID FROM Employees WHERE LastName = @lastname)">
</asp:accessdatasource>
<br />Enter the name "Davolio" or "King" in the text box and click the button.
<br />
<asp:textbox
id="LastNameBox"
runat="server" />
<br />
<asp:button
id="Button1"
runat="server"
text="Get Records" />
<br />
<asp:gridview
id="GridView1"
runat="server"
allowsorting="True"
datasourceid="AccessDataSource1">
</asp:gridview>
</form>
</body>
</html>
<%@Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(sender As Object, e As EventArgs)
' You can add a FormParameter to the AccessDataSource control's
' SelectParameters collection programmatically.
AccessDataSource1.SelectParameters.Clear()
' Security Note: The AccessDataSource uses a FormParameter,
' Security Note: which does not perform validation of input from the client.
' Security Note: To validate the value of the FormParameter,
' Security Note: handle the Selecting event.
Dim formParam As New FormParameter("lastname","LastNameBox")
formParam.Type=TypeCode.String
AccessDataSource1.SelectParameters.Add(formParam)
End Sub ' Page_Load
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:accessdatasource
id="AccessDataSource1"
runat="server"
datasourcemode="DataSet"
datafile="Northwind.mdb"
selectcommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate
FROM Orders WHERE EmployeeID =
(SELECT EmployeeID FROM Employees WHERE LastName = @lastname)">
</asp:accessdatasource>
<br />Enter the name "Davolio" or "King" in the text box and click the button.
<br />
<asp:textbox
id="LastNameBox"
runat="server" />
<br />
<asp:button
id="Button1"
runat="server"
text="Get Records" />
<br />
<asp:gridview
id="GridView1"
runat="server"
allowsorting="True"
datasourceid="AccessDataSource1">
</asp:gridview>
</form>
</body>
</html>
Comentários
A ParameterCollection classe representa uma coleção de Parameter objetos usados em cenários avançados de associação de dados com controles de fonte de dados. Os Parameter objetos são usados para associar os valores contidos por variáveis locais Page , cookies HTTP, variáveis de sessão e valores de outros controles a controles de fonte de dados ao recuperar, atualizar, excluir e inserir dados.
Use a ParameterCollection classe para gerenciar programaticamente um conjunto de Parameter objetos. Você pode adicionar, inserir e remover Parameter objetos usando os métodos apropriados da ParameterCollection classe . Para recuperar Parameter programaticamente objetos de uma coleção, use um dos seguintes métodos:
Use o indexador para obter um único Parameter objeto da coleção, por nome ou usando notação de matriz.
Use o GetEnumerator método para criar um System.Collections.IEnumeratorobjeto implementado por , que pode ser usado para obter itens da coleção.
A Count propriedade especifica o número total de itens na coleção e é usada para determinar o limite superior da coleção. Você pode adicionar e remover itens da coleção usando os Addmétodos , Insert, Removee RemoveAt .
Dependendo da implementação e da semântica de um determinado controle da fonte de dados, a ordem na qual os parâmetros são armazenados na ParameterCollection coleção pode ser importante. Por exemplo, ao usar o SqlDataSource controle como uma fonte de dados ODBC, a ordem dos Parameter objetos na ParameterCollection coleção deve ser igual à ordem dos parâmetros nas consultas SQL parametrizadas que você usa. No entanto, ao usar o controle com o SqlDataSource Microsoft SQL Server, a ordem dos Parameter objetos não é importante.
Importante
Quando você usa controles de fonte de dados, os valores são inseridos em parâmetros de comando sem validação, o que é uma possível ameaça à segurança. Use um evento no controle da fonte de dados para validar valores de parâmetro antes que o comando seja executado. Para obter mais informações, consulte Visão geral de explorações de script.
A tabela a seguir lista as diferentes classes de parâmetro e como elas são usadas.
Classe Parameter | Descrição |
---|---|
Parameter | A classe de parâmetro base. Use-a para associar a uma variável local ou qualquer cadeia de caracteres estática usando a DefaultValue propriedade . |
ControlParameter | Um parâmetro que pode ser usado para associar à propriedade ou ao valor retornado do método de um controle. |
CookieParameter | Um parâmetro que pode ser usado para associar ao valor de um cookie. |
FormParameter | Um parâmetro que pode ser usado para associar a um atributo da página atual do Web Forms. |
QueryStringParameter | Um parâmetro que pode ser usado para associar a um valor passado para uma página do Web Forms em uma cadeia de caracteres de consulta. |
SessionParameter | Um parâmetro que pode ser usado para associar ao valor de uma variável de sessão. |
ProfileParameter | Um parâmetro que pode ser usado para associar ao valor de uma propriedade ASP.NET Profile. |
Construtores
ParameterCollection() |
Inicializa a classe para uso por uma instância de classe herdada. Esse construtor pode ser chamado apenas por uma classe herdada. |
Propriedades
Count |
Obtém o número de elementos contidos na coleção StateManagedCollection. (Herdado de StateManagedCollection) |
Item[Int32] |
Obtém ou define o objeto Parameter no índice especificado na coleção. |
Item[String] |
Obtém ou define o objeto Parameter com o nome especificado na coleção. |
Métodos
Add(Parameter) |
Acrescenta o objeto Parameter especificado ao final da coleção. |
Add(String, DbType, String) |
Cria um objeto Parameter com o nome especificado, tipo de banco de dados e valor padrão e o adiciona ao final da coleção. |
Add(String, String) |
Cria um objeto Parameter com o nome especificado e o valor padrão e anexa-o ao final da coleção. |
Add(String, TypeCode, String) |
Cria um objeto Parameter com o nome especificado, TypeCode e valor padrão e o acrescenta ao final da coleção. |
Clear() |
Remove todos os itens da coleção StateManagedCollection. (Herdado de StateManagedCollection) |
Contains(Parameter) |
Determina se a coleção ParameterCollection contém um valor específico. |
CopyTo(Array, Int32) |
Copia os elementos da coleção StateManagedCollection para uma matriz, começando em um índice de matriz específico. (Herdado de StateManagedCollection) |
CopyTo(Parameter[], Int32) |
Copia um índice especificado de uma matriz de parâmetros para a coleção de parâmetros. |
CreateKnownType(Int32) |
Cria uma instância de um objeto Parameter padrão. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetEnumerator() |
Retorna um iterador que itera por meio da coleção StateManagedCollection. (Herdado de StateManagedCollection) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetKnownTypes() |
Obtém uma matriz de tipos Parameter que a coleção ParameterCollection pode conter. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
GetValues(HttpContext, Control) |
Obtém uma coleção ordenada de nomes de objetos Parameter e seus valores correspondentes contidos atualmente na coleção. |
IndexOf(Parameter) |
Determina o índice de um objeto Parameter especificado na coleção ParameterCollection. |
Insert(Int32, Parameter) |
Insere o objeto Parameter especificado na coleção ParameterCollection no índice especificado. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnClear() |
Quando substituído em uma classe derivada, executa o trabalho adicional antes do método Clear() remover todos os itens da coleção. (Herdado de StateManagedCollection) |
OnClearComplete() |
Executa processos personalizados adicionais depois de limpar o conteúdo da coleção. |
OnInsert(Int32, Object) |
Ocorre antes que o método Insert(Int32, Parameter) seja chamado. |
OnInsertComplete(Int32, Object) |
Ocorre depois que o método Insert(Int32, Parameter) é concluído. |
OnParametersChanged(EventArgs) |
Aciona o evento ParametersChanged. |
OnRemove(Int32, Object) |
Quando substituído em uma classe derivada, executa o trabalho adicional antes do método IList.Remove(Object) ou IList.RemoveAt(Int32) remover o item especificado da coleção. (Herdado de StateManagedCollection) |
OnRemoveComplete(Int32, Object) |
Ocorre depois que o método Remove(Parameter) é concluído. |
OnValidate(Object) |
Executa processos personalizados adicionais ao validar um valor. |
Remove(Parameter) |
Remove o objeto Parameter especificado da coleção ParameterCollection. |
RemoveAt(Int32) |
Remove o objeto Parameter no índice especificado da coleção ParameterCollection. |
SetDirty() |
Força a coleção StateManagedCollection inteira a ser serializada no estado de exibição. (Herdado de StateManagedCollection) |
SetDirtyObject(Object) |
Marca o objeto Parameter especificado como alterado desde o último carregamento ou salvamento do estado de exibição. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
UpdateValues(HttpContext, Control) |
Itera nos objetos Parameter contidos na coleção e chama o método |
Eventos
ParametersChanged |
Ocorre quando um ou mais objetos Parameter contidos na coleção muda de estado. |
Implantações explícitas de interface
ICollection.Count |
Obtém o número de elementos contidos na coleção StateManagedCollection. (Herdado de StateManagedCollection) |
ICollection.IsSynchronized |
Obtém um valor que indica se a coleção StateManagedCollection é sincronizada (thread-safe). Este método retorna |
ICollection.SyncRoot |
Obtém um objeto que pode ser usado para sincronizar o acesso à coleção StateManagedCollection. Este método retorna |
IEnumerable.GetEnumerator() |
Retorna um iterador que itera por meio da coleção StateManagedCollection. (Herdado de StateManagedCollection) |
IList.Add(Object) |
Adiciona um item à coleção StateManagedCollection. (Herdado de StateManagedCollection) |
IList.Clear() |
Remove todos os itens da coleção StateManagedCollection. (Herdado de StateManagedCollection) |
IList.Contains(Object) |
Determina se a coleção StateManagedCollection contém um valor específico. (Herdado de StateManagedCollection) |
IList.IndexOf(Object) |
Determina o índice de um item especificado na coleção StateManagedCollection. (Herdado de StateManagedCollection) |
IList.Insert(Int32, Object) |
Insere um item na coleção StateManagedCollection no índice especificado. (Herdado de StateManagedCollection) |
IList.IsFixedSize |
Obtém um valor que indica se a coleção StateManagedCollection tem um tamanho fixo. Este método retorna |
IList.IsReadOnly |
Obtém um valor que indica se a coleção StateManagedCollection é somente leitura. (Herdado de StateManagedCollection) |
IList.Item[Int32] |
Obtém o elemento IStateManager no índice especificado. (Herdado de StateManagedCollection) |
IList.Remove(Object) |
Remove a primeira ocorrência do objeto especificado da coleção StateManagedCollection. (Herdado de StateManagedCollection) |
IList.RemoveAt(Int32) |
Remove o elemento IStateManager no índice especificado. (Herdado de StateManagedCollection) |
IStateManager.IsTrackingViewState |
Obtém um valor que indica se a coleção StateManagedCollection está salvando alterações no estado de exibição. (Herdado de StateManagedCollection) |
IStateManager.LoadViewState(Object) |
Restaura o estado de exibição salvo anteriormente da coleção StateManagedCollection e o itens IStateManager que ele contém. (Herdado de StateManagedCollection) |
IStateManager.SaveViewState() |
Salva as alterações na coleção StateManagedCollection e cada objeto IStateManager que ela contém, desde o momento em que a página foi postada novamente no servidor. (Herdado de StateManagedCollection) |
IStateManager.TrackViewState() |
Faz com que a coleção StateManagedCollection e os objetos IStateManager que ela contém controlem as alterações realizadas no estado de exibição, para que elas possam ser mantidas em todas as solicitações para a mesma página. (Herdado de StateManagedCollection) |
Métodos de Extensão
Cast<TResult>(IEnumerable) |
Converte os elementos de um IEnumerable para o tipo especificado. |
OfType<TResult>(IEnumerable) |
Filtra os elementos de um IEnumerable com base em um tipo especificado. |
AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |