Exemplo da propriedade Handler (VB)
Importante
A partir do Windows 8 e do Windows Server 2012, os componentes do servidor RDS não estão mais incluídos no sistema operacional Windows (confira Windows 8 e Manual de Compatibilidade do Windows Server 2012 para obter mais detalhes). Os componentes do cliente RDS serão removidos em uma versão futura do Windows. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Os aplicativos que usam o RDS devem migrar para o Serviço de Dados do WCF.
Este exemplo demonstra a propriedade Manipuladorde objetos DataControl do RDS. (Confira Personalização de DataFactory para obter mais detalhes.)
Suponha que as seções a seguir no arquivo de parâmetro, Msdfmap.ini, estejam localizadas no servidor:
[connect AuthorDataBase]
Access=ReadWrite
Connect="DSN=Pubs"
[sql AuthorById]
SQL="SELECT * FROM Authors WHERE au_id = ?"
O código é parecido com o código mostrado a seguir. O comando atribuído à propriedade SQL corresponderá ao identificador AuthorById e recuperará uma linha para o autor Michael O'Leary. A propriedade Recordset do objeto DataControl é atribuída a um objeto Recordset desconectado puramente como uma conveniência de codificação.
'BeginHandlerVB
Public Sub Main()
On Error GoTo ErrorHandler
Dim dc As New DataControl
Dim rst As ADODB.Recordset
dc.Handler = "MSDFMAP.Handler"
dc.ExecuteOptions = 1
dc.FetchOptions = 1
dc.Server = "https://MyServer"
dc.Connect = "Data Source=AuthorDataBase"
dc.SQL = "AuthorById('267-41-2394')"
dc.Refresh 'Retrieve the record
Set rst = dc.Recordset 'Use another Recordset as a convenience
Debug.Print "Author is '" & rst!au_fname & " " & rst!au_lname & "'"
' clean up
If rst.State = adStateOpen Then rst.Close
Set rst = Nothing
Set dc = Nothing
Exit Sub
ErrorHandler:
' clean up
If Not rst Is Nothing Then
If rst.State = adStateOpen Then rst.Close
End If
Set rst = Nothing
Set dc = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
'EndHandlerVB