必要なクライアントの設定
重要
Windows 8 および Windows Server 2012 から、RDS サーバー コンポーネントが Windows オペレーティング システムに含まれなくなりました (詳細については、Windows 8 および Windows Server 2012 の互換性クックブックを参照してください)。 RDS クライアント コンポーネントは、今後のバージョンの Windows で削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 RDS を使用するアプリケーションを、WCF Data Service に移行する必要があります。
カスタムの DataFactory ハンドラーを使う場合は、次の設定を指定します。
Connection オブジェクト (ADO) オブジェクトの Provider プロパティ (ADO) プロパティまたは Connection オブジェクトの接続文字列 "Provider=" キーワードに "Provider=MS Remote" を指定します。
CursorLocation プロパティ (ADO) プロパティを adUseClient に設定します。
DataControl オブジェクト (RDS) オブジェクトの Handler プロパティ、または Recordset オブジェクト (ADO) オブジェクトの接続文字列 "Handler=" キーワードに、使うハンドラーの名前を指定します (Connection オブジェクトの接続文字列でハンドラーを設定することはできません)。
RDS には MSDFMAP.Handler というサーバー上の既定のハンドラーが用意されています (既定のカスタマイズ ファイルは、MSDFMAP.INI という名前です)。
例
MSDFMAP.INI の次のセクションと、データ ソース名 AdvWorks が事前に定義されているとします。
[connect CustomerDataBase]
Access=ReadWrite
Connect="DSN=AdvWorks"
[sql CustomerById]
SQL="SELECT * FROM Customers WHERE CustomerID = ?"
次のコード スニペットは、Visual Basic で記述されています。
RDS.DataControl バージョン
Dim dc as New RDS.DataControl
Set dc.Handler = "MSDFMAP.Handler"
Set dc.Server = "https://yourServer"
Set dc.Connect = "Data Source=CustomerDatabase"
Set dc.SQL = "CustomerById(4)"
dc.Refresh
Recordset バージョン
Dim rs as New ADODB.Recordset
rs.CursorLocation = adUseClient
Handler プロパティ (RDS) プロパティまたはキーワード、Provider プロパティ (ADO) プロパティまたはキーワード、CustomerById および CustomerDatabase 識別子を指定します。 次に、Recordset オブジェクトを開きます
rs.Open "CustomerById(4)", "Handler=MSDFMAP.Handler;" & _
"Provider=MS Remote;Data Source=CustomerDatabase;" & _
"Remote Server=https://yourServer"
参照
カスタマイズ ファイルの Connect セクション
カスタマイズ ファイルの SQL セクション
カスタマイズ ファイルの UserList セクション
DataFactory のカスタマイズ
カスタマイズ ファイルの概要
独自のカスタム ハンドラーの記述