ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →HCL Domino Data Provider の30日間無償トライアルをダウンロード
30日間の無償トライアルへCData
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
CData ADO.NET Provider for Domino は、LINQ やEntity Framework などの標準のADO.NET インターフェースを使ってHCL Domino の操作を実現します。この記事では、LINQPad から接続してLINQ クエリを実行する方法を説明します。
本記事の手順を実行してLINQPad からHCL Domino に接続するには、以下の3つの製品が必要になります。
CData ADO.NET Provider for Domino およびLINQPad をダウンロード・インストールしたら、Visual Studio で新しいクラスライブラリプロジェクトを作成します。
ADO.NET Provider の利用に必要となるEF 6を設定する方法については、ヘルプドキュメントを参照してください。
プロジェクトを右クリックし、[追加]→[新しい項目]→[ADO.NET Entity Data Model]をクリックします。ダイアログが表示されたら、データベースから[Code First]を選択します。 [New Connection]をクリックして、表示されたウィザードで接続文字列オプションを指定します。
CData 製品を経由してDomino に接続するには、「Proton コンポーネント」のインストールが必要です。通常、 Proton はAppDev パックの一部として配布されています。Proton またはAppDev パックの入手およびインストール方法については、HCL のドキュメントを参照してください。
CData 製品は匿名アクセス、またはクライアント証明書の提供によりProton を認証できます。 これらのオプションは両方ともDomino で特定の設定が必要です。
次の2セクションでは、接続に必要な事前設定について説明します。使用したい認証方法に対応するセクションを参照してください。
クライアント証明書による認証では、CData 製品は専用のユーザーアカウントとして接続します。このユーザーには、接続するすべてのデータベースに対するdesigner またはそれ以上のアクセス権が付与する必要があります。
また、CData 製品を使用するためにはユーザーがインターネット証明書を取得する必要があります。サーバーコンソールで以下のコマンドを実行することで、Proton にこの証明書を作成させることができます。 APPUSER はCData 製品でアクセス設定するユーザーアカウント名、ADMINISTRATOR は証明書を受け取るユーザー名です。
load proton --setupclient "APPUSER" --sendto "ADMINISTRATOR"新しい証明書は、Notes のADMINISTRATOR メールボックスから利用できます。証明書は、クライアント証明書(clientcert)およびキー(clientkey)の2ファイルに分けて送信される場合があります。 キーファイルのテキストを証明書ファイルの末尾にコピーアンドペーストして、2つのファイルを結合する必要があります。
匿名アクセスでは、CData 製品はAnonymous という一般的なユーザーアカウントで接続します。 接続するすべてのデータベースには、次の2つの権限が設定される必要があります。
接続するには以下を設定します。
CData 製品は、クライアント証明書を使用してProton に認証することも、匿名アクセスで認証することも可能です。
クライアント証明書で認証するには以下を設定します。
匿名認証を使用するには、AuthScheme をAnonymous に設定します。
一般的な接続文字列は次のとおりです。
Server=https://domino.corp.com;Database=names.nsf;Port=3002;SSLClientCertType=PEMKEY_FILE;SSLClientCert=full_path_of_certificate.pem;SSLServerCert=*
希望するテーブルおよびビューを選択して[Finish]をクリックし、データモデルを作成します。
必要な接続プロパティを取得してデータモデルアセンブリを作成したら、以下の手順に従ってLINQPad でデータモデルを使いはじめましょう。
LINQPad を開き[接続の追加]をクリックします。
[Use a typed data context from your own assembly]オプションを選択します。
[Entity Framework DbContext]を選択します。
[Path to Custom Assembly]ボックスの横にある[参照]をクリックして、プロジェクトフォルダを参照します。bin フォルダの下の.dll または.exe を参照します。
これでLINQPad 経由でHCL Domino にクエリできます。サポートされたLINQ クエリの例は、ヘルプドキュメントの「LINQ およびEntity Framework」を参照してください。