Поделиться через


Пример свойства Handler (Visual Basic)

Важно!

Начиная с Windows 8 и Windows Server 2012 компоненты сервера RDS больше не включаются в операционную систему Windows (дополнительные сведения см. в Windows 8 и Windows Server 2012 совместимости). Клиентские компоненты RDS будут удалены в следующей версии Windows. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Приложения, использующие RDS, должны перейти на службу данных WCF.

В этом примере демонстрируется свойство Обработчик объекта DataControl RDS. (Дополнительные сведения см. в разделе Настройка DataFactory .)

Предположим, что следующие разделы в файле параметров, Msdfmap.ini, находятся на сервере:

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

Код выглядит следующим образом. Команда, назначенная свойству SQL , будет соответствовать идентификатору AuthorById и будет извлекать строку для автора Майкла О'Лири. Свойство Объекта DataControlRecordset назначается отключенным объекту Recordset исключительно для удобства программирования.

'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  

См. также:

Объект DataControl (служба удаленных рабочих столов)
Свойство Handler (служба удаленных рабочих столов)