Condividi tramite


Esempio di proprietà Handler (VB)

Importante

A partire da Windows 8 e Windows Server 2012, i componenti del server RDS non sono più inclusi nel sistema operativo Windows (vedere Windows 8 e Windows Server 2012 Compatibility Cookbook per ulteriori dettagli). I componenti client di RDS verranno rimossi in una versione futura di Windows. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Le applicazioni che utilizzano RDS dovrebbero migrare a WCF Data Service.

In questo esempio viene illustrata la proprietà Handler dell'oggetto DataControl di Servizi Desktop remoto. Per altri dettagli, vedere Personalizzazione di DataFactory .

Si supponga che le sezioni seguenti nel file di parametri, Msdfmap.ini, si trovino nel server:

[connect AuthorDataBase]  
Access=ReadWrite  
Connect="DSN=Pubs"  
[sql AuthorById]  
SQL="SELECT * FROM Authors WHERE au_id = ?"  

Il codice è simile al seguente. Il comando assegnato alla proprietà SQL corrisponderà all'identificatore AuthorById e recupererà una riga per l'autore Michael O'Leary. La proprietà Recordset dell'oggetto DataControl viene assegnata a un oggetto Recordset disconnesso esclusivamente come praticità per la codifica.

'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  

Vedere anche

Oggetto DataControl di RDS
proprietà Handler (RDS)