IMessageFilterTable<TFilterData>.GetMatchingValue Método
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.
Retorna um valor que indica se o critério de correspondência de um filtro na tabela é atendido pela mensagem especificada ou mensagem em buffer e retorna os dados de filtro para o filtro correspondente.
Sobrecargas
| Nome | Description |
|---|---|
| GetMatchingValue(Message, TFilterData) |
Retorna um valor que indica se o critério de correspondência de exatamente um filtro na tabela é atendido pela mensagem especificada e adiciona os dados de filtro correspondentes a uma coleção. |
| GetMatchingValue(MessageBuffer, TFilterData) |
Retorna um valor que indica se o critério de correspondência de exatamente um filtro na tabela é atendido pela mensagem em buffer especificada e adiciona os dados de filtro correspondentes a uma coleção. |
Comentários
Use um desses métodos quando, no máximo, espera-se que um filtro corresponda à mensagem e apenas os dados de filtro do filtro correspondente devem ser recuperados. Esses métodos retornam um booliano que indica se um filtro correspondente foi encontrado e definem o data parâmetro de referência para os dados de filtro correspondentes.
Use GetMatchingFilter se o corpo da mensagem não for inspecionado por nenhum dos filtros na tabela de filtros.
Se o corpo da mensagem puder ser inspecionado por um filtro na tabela de filtro, armazene a mensagem em buffer e passe-a para a GetMatchingFilter versão do método.
GetMatchingValue(Message, TFilterData)
- Origem:
- IMessageFilterTable.cs
- Origem:
- IMessageFilterTable.cs
- Origem:
- IMessageFilterTable.cs
Retorna um valor que indica se o critério de correspondência de exatamente um filtro na tabela é atendido pela mensagem especificada e adiciona os dados de filtro correspondentes a uma coleção.
public:
bool GetMatchingValue(System::ServiceModel::Channels::Message ^ message, [Runtime::InteropServices::Out] TFilterData % value);
public bool GetMatchingValue(System.ServiceModel.Channels.Message message, out TFilterData value);
abstract member GetMatchingValue : System.ServiceModel.Channels.Message * 'FilterData -> bool
Public Function GetMatchingValue (message As Message, ByRef value As TFilterData) As Boolean
Parâmetros
- value
- TFilterData
out que armazena o FilterData que corresponde ao message.
Retornos
true se o critério de correspondência de exatamente um filtro na tabela for atendido pela mensagem; false se nenhum filtro estiver satisfeito.
Comentários
Use esse método quando espera-se que um único filtro corresponda à mensagem e apenas os dados de filtro do filtro correspondente devem ser recuperados.
Esse método espera, no máximo, um único filtro correspondente. Se mais de um filtro corresponder, será necessário gerar um MultipleFilterMatchesException .
Se o corpo da mensagem precisar ser inspecionado por um filtro na tabela de filtro, faça o buffer da mensagem usando CreateBufferedCopy e passe-a para a GetMatchingValue versão do método.
Notas aos Implementadores
Se mais de um filtro corresponder à mensagem, será necessário gerar um MultipleFilterMatchesException .
Essa sobrecarga leva um Message e deve gerar um InvalidBodyAccessException caso tente examinar o corpo da mensagem.
Aplica-se a
GetMatchingValue(MessageBuffer, TFilterData)
- Origem:
- IMessageFilterTable.cs
- Origem:
- IMessageFilterTable.cs
- Origem:
- IMessageFilterTable.cs
Retorna um valor que indica se o critério de correspondência de exatamente um filtro na tabela é atendido pela mensagem em buffer especificada e adiciona os dados de filtro correspondentes a uma coleção.
public:
bool GetMatchingValue(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, [Runtime::InteropServices::Out] TFilterData % value);
public bool GetMatchingValue(System.ServiceModel.Channels.MessageBuffer messageBuffer, out TFilterData value);
abstract member GetMatchingValue : System.ServiceModel.Channels.MessageBuffer * 'FilterData -> bool
Public Function GetMatchingValue (messageBuffer As MessageBuffer, ByRef value As TFilterData) As Boolean
Parâmetros
- messageBuffer
- MessageBuffer
O MessageBuffer teste a ser testado.
- value
- TFilterData
out que armazena o FilterData que corresponde ao messageBuffer.
Retornos
true se o critério de correspondência de exatamente um filtro na tabela for atendido pela mensagem; false se nenhum filtro estiver satisfeito.
Comentários
Use esse método quando se espera que um único filtro corresponda à mensagem em buffer, somente os dados de filtro do filtro correspondente devem ser recuperados e o corpo da mensagem pode precisar ser inspecionado.
Notas aos Implementadores
Se mais de um filtro corresponder à mensagem, será necessário gerar um MultipleFilterMatchesException .