.NETコネクタのインストールと構成

この章では、Advanced Server .NET Connectorのインストールおよび構成方法について説明します。

.NETコネクタのインストール

EnterpriseDB .NET Connectorインストーラーを使用できます(EnterpriseDB Webサイトから入手可能) <https://www.enterprisedb.com/advanced-downloads> `_).NETコネクタをシステムに追加します。インストーラーをダウンロードした後、インストーラーアイコンを右クリックし、コンテキストメニューから``管理者として実行``を選択します。プロンプトが表示されたら、インストール言語を選択し、``OK``をクリックして``セットアップ``ウィンドウに進みます。

The .NET Connector Installation wizard

The .NET Connector Installation wizard

``次へ``をクリックして続行します。

The Installation dialog

インストールダイアログ

``インストールディレクトリ``ダイアログを使用して、コネクタをインストールするディレクトリを指定し、``次``をクリックして続行します。

The Ready to Install dialog

インストールの準備ダイアログ

``インストールの準備完了``ダイアログで``次へ``をクリックして、インストールを開始します。ポップアップダイアログがインストールウィザードの進行状況を確認します。

The installation is complete

インストールが完了しました

ウィザードがセットアップを完了したことを通知したら、``終了``ボタンをクリックしてダイアログを終了します。

StackBuilder Plusを使用して、既存のAdvanced Serverインストールでコネクタを追加または更新することもできます。 StackBuilder Plusを開くには、Windowsの``アプリ``メニューからStackBuilder Plusを選択します。

Starting StackBuilder Plus

Starting StackBuilder Plus

StackBuilder Plusが開いたら、画面の指示に従います。ツリーコントロールの``データベースドライバー``ノードから``EnterpriseDB.Net Connector``オプションを選択します。

Selecting the Connectors installer

コネクタインストーラーの選択

画面上のウィザードの指示に従って、EnterpriseDBコネクタのインストールを追加または更新します。

.NETコネクタの構成

.NETコネクタの構成については、環境固有の次のセクションを参照してください。

  • ライブラリファイルの参照:ref: `一般的な構成情報<referencing_the_library_files> `すべてのコンポーネントに適用可能。

  • 。NET Framework 4.0。:ref: `.NET Framework 4.0で使用するための設定手順<framework_setup_4> `。

  • 。NET Framework 4.5。:ref: `.NET Framework 4.5で使用するための設定手順<framework_setup_4_5> `。

  • 。NET Framework 4.5.1。:ref: `.NET Framework 4.5.1で使用するための設定手順<framework_setup_4_5_1> `。

  • 。NET Standard 2.0。:ref: `.NET Standard 2.0で使用するための設定手順<standard_setup_2> `。

  • Entity Framework 5/6。:ref: `Entity Frameworkで使用するための設定手順<entity_setup_5_6> `。

  • EnterpriseDB VSIX。:ref: `EnterpriseDB VSIXで使用するための設定手順<vsix_setup> `。

ライブラリファイルの参照

Microsoft Visual Studioでライブラリファイルを参照するには:

  1. ``ソリューションエクスプローラー``でプロジェクトを選択します。

  2. ``プロジェクト``メニューから``参照の追加``を選択します。

  3. ``参照の追加``ダイアログボックスが開いたら、適切なライブラリファイルを参照して選択します。

オプションで、ライブラリファイルを指定した場所にコピーできます。

Advanced Server .NETクラスを使用する前に、名前空間をプログラムにインポートする必要があります。名前空間をインポートすると、コンパイラは名前空間内で使用可能なクラスを認識します。名前空間は次のとおりです。

EnterpriseDB.EDBClient

Entity Framework 6を使用している場合、次の追加の名前空間が必要です。

EntityFramework6.EntepriseDB.EDBClient

名前空間を含めるために使用する方法は、作成しているアプリケーションのタイプによって異なります。たとえば、次のコマンドは名前空間を``ASP.NET``ページにインポートします:

&lt;%import namespace = &quot;EnterpriseDB.EDBClient&quot;%&gt;

名前空間をC#アプリケーションにインポートするには、次のように記述します。

EnterpriseDB.EDBClientを使用;

.NET Frameworkのセットアップ

以下のセクションでは、さまざまな.NETバージョンのセットアップについて説明します。

.NET Framework 4.0

.NET Frameworkバージョン4.0を使用している場合、データプロバイダーのインストールパスは次のとおりです。

C:/ Program Files / edb / dotnet / net40 /

次の共有ライブラリファイルが必要です。

EDBDataProvider.2.0.2.dll

Mono.Security.dll

:ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルの参照に関する情報。

使用するアプリケーションのタイプによっては、名前空間をソースコードにインポートする必要がある場合があります(:ref: `ライブラリファイルの参照を参照) <referencing_the_library_files> `)。

.NET Framework 4.5

.NET Frameworkバージョン4.5を使用している場合、データプロバイダーのインストールパスは次のとおりです。

C:/ Program Files / edb / dotnet / net45 /

次の共有ライブラリファイルが必要です。

EnterpriseDB.EDBClient.dll

System.Threading.Tasks.Extensions.dll

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

System.Memory.dll

また、次の依存関係をプロジェクトに追加する必要があります。

System.Threading.Tasks.Extensions.dll

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

System.Memory.dll

:ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルの参照に関する情報。

使用するアプリケーションのタイプによっては、名前空間をソースコードにインポートする必要がある場合があります(:ref: `ライブラリファイルの参照を参照) <referencing_the_library_files> `)。

.NET Framework 4.5.1

.NET Frameworkバージョン4.5.1を使用している場合、データプロバイダーのインストールパスは次のとおりです。

C:/ Program Files / edb / dotnet / net451 /

次の共有ライブラリファイルが必要です。

EnterpriseDB.EDBClient.dll

System.Threading.Tasks.Extensions.dll

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

System.Memory.dll

また、次の依存関係をプロジェクトに追加する必要があります。

System.Threading.Tasks.Extensions.dll

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

System.Memory.dll

:ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルの参照に関する情報。

使用するアプリケーションのタイプによっては、名前空間をソースコードにインポートする必要がある場合があります(:ref: `ライブラリファイルの参照を参照) <referencing_the_library_files> `)。

.NET Standard 2.0

.NET Standard Framework 2.0の場合、データプロバイダーのインストールパスは次のとおりです。

C:/ Program Files / edb / dotnet / netstandard2.0 /

次の共有ライブラリファイルが必要です。

EnterpriseDB.EDBClient.dll

System.Threading.Tasks.Extensions.dll

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

また、次の依存関係をプロジェクトに追加する必要があります。

System.Runtime.CompilerServices.Unsafe.dll

System.ValueTuple.dll

注釈

ターゲットフレームワークが.Net Core 2.0の場合、プロジェクトに次のファイルを含めます。

System.Threading.Tasks.Extensions.dll

:ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルに関する情報。

使用するアプリケーションの種類によっては、名前空間をソースコードにインポートする必要がある場合があります(参照:ライブラリファイルの参照) <referencing_the_library_files> `)。

Entity Framework 5/6

Entity Frameworkで使用するために.NETコネクタをセットアップするには、データプロバイダーのインストールパスは次のとおりです。

C:/ Program Files / edb / dotnet / EF /

次の共有ライブラリファイルが必要です。

EntityFramework5.EnterpriseDB.EDBClient.dll

EntityFramework6.EnterpriseDB.EDBClient.dll

注釈

Entity Frameworkは、``net45``および``net451``サブディレクトリにある``EnterpriseDB.EDBClient.dll``で使用できます。

:ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルの参照に関する情報。

を追加<DbProviderFactories>````app.config``ファイルへのPostgres用の``ADO.NET``ドライバーのエントリ。次のエントリを追加します。

<add name="EnterpriseDB.EDBClient"
  invariant="EnterpriseDB.EDBClient"
  description=".NET Data Provider for EnterpriseDB PostgreSQL”
  type="EnterpriseDB.EDBClient.EDBFactory, EnterpriseDB.EDBClient, Version=4.0.10.1, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7"
  support="FF"/>

プロジェクトの``app.config``ファイルで、EntityFramework / providersタグの下にプロバイダーサービスの次のエントリを追加します。

<provider invariantName="EnterpriseDB.EDBClient"
  type="EnterpriseDB.EDBClient.EDBServices, EntityFramework6.EnterpriseDB.EDBClient">
</provider>

以下は``app.config``ファイルの例です:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>

    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>

 <entityFramework>
   <providers>
     <provider invariantName="EnterpriseDB.EDBClient" type="EnterpriseDB.EDBClient.EDBServices, EntityFramework6.EnterpriseDB.EDBClient"></provider>
   </providers>
 </entityFramework>

 <system.data>
   <DbProviderFactories>
     <remove invariant="EnterpriseDB.EDBClient"/>
     <add name="EnterpriseDB Data Provider" invariant="EnterpriseDB.EDBClient" support="FF" description=".Net Framework Data Provider for Postgresql" type="EnterpriseDB.EDBClient.EDBFactory, EnterpriseDB.EDBClient"/>
   </DbProviderFactories>
 </system.data>

</configuration>

注釈

の同じエントリ<providers>そして<DbProviderFactories>``web.config``ファイルと``app.config``ファイルに有効です。

使用しているアプリケーションの種類によっては、名前空間をソースコードにインポートする必要がある場合があります(:ref: `ライブラリファイルの参照を参照) <referencing_the_library_files> `)。

Entity Frameworkの使用情報については、Microsoftのドキュメントを参照してください。

Enterprise Studio VSIX for Visual Studio 2015/2017/2019

``EDB Data Designer Extensibility Provider(EnterpriseDB VSIX)``は、Advanced ServerデータベースアクセスをVisual Studioに統合するコンポーネントであり、Visual Studioに統合された機能を提供します。

Visual StudioのサーバーエクスプローラーからAdvanced Serverに接続したり、既存のデータベースからモデルを作成したりすることができます。したがって、Visual Studioの機能が必要な場合は、EnterpriseDB VSIXを使用する必要があります。

EnterpriseDB VSIXは次のディレクトリにあります。

C:/ Program Files / edb / dotnet / vsix /

上記の場所で利用可能なファイルは次のとおりです。

EnterpriseDB.vsix
SSDLToPgSQL.tt

Visual Studio 2015/2017/2019のインストールと構成

以下は、EnterpriseDB VSIXをインストールおよび構成する手順です。

ステップ1:次の場所にある``EnterpriseDB.vsix``インストーラーを使用して、Visual Studioの目的のバージョンにEnterpriseDB VSIXをインストールします。

C:/ Program Files / edb / dotnet / vsix / EnterpriseDB.vsix

VSIXの以前のバージョンが既にインストールされている場合は、競合を避けるためにそれらをアンインストールすることを強くお勧めします。

グローバルアセンブリキャッシュ(GAC)に``EnterpriseDB.EDBClient``を含める必要はなくなりました。

ステップ2: Visual Studioを再起動し、``ツール&gt;拡張機能と更新…``メニューからEnterpriseDB拡張機能がインストールされていることを確認します。

ステップ3:次の場所からVisual Studio Developersコマンドラインを使用して、``gacutil``ユーティリティを使用してグローバルアセンブリキャッシュ(GAC)に``System.ValueTuple.dll``アセンブリを追加します。

C:/ Program Files / edb / dotnet / vsix / System.ValueTuple.dll

例:

&gt; gacutil.exe / i System.ValueTuple.dll

ステップ4:サーバーエクスプローラーから、``データ接続``を右クリックし、``接続を追加``をクリックして、``Enterprisedb Postgresデータベース``データソースが利用可能であることを確認します。

モデル優先およびデータベース優先使用

ステップ1: Visual Studio Developersコマンドラインを使用して、``gacutil``ユーティリティを使用して、グローバルアセンブリキャッシュ(GAC)に``EntityFramework5.EnterpriseDB.EDBClient.dll``アセンブリを追加します。

例:

&gt; gacutil.exe / i EntityFramework5.EnterpriseDB.EDBClient.dll

ステップ2:を追加<DbProviderFactories>````machine.config``ファイル内のEDB PostgresのADO.NETドライバーのエントリ。エントリは次のとおりです。

<add name="EnterpriseDB.EDBClient"
  invariant="EnterpriseDB.EDBClient"
  description=".NET Data Provider for EnterpriseDB PostgreSQL"
  type="EnterpriseDB.EDBClient.EDBFactory, EnterpriseDB.EDBClient, Version=4.0.10.1, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7"
  support="FF"/>

属性と値のペアでは、二重引用符で囲まれた文字列に余分な空白文字を含めることはできませんが、1行で構成する必要があります。このセクションに示されている例は、明確にするために複数の行に分割されている場合がありますが、実際には次のような1行で構成する必要があります。

description = &quot;EnterpriseDB PostgreSQL用の.NETデータプロバイダー&quot;

64ビットWindowsの場合、``machine.config``ファイルは次の場所にあります。

C:/ Windows / Microsoft.NET / Framework64 / v4.0.30319 / Config / machine.config

32ビットWindowsの場合、``machine.config``ファイルは次の場所にあります。

C:/ Windows / Microsoft.NET / Framework / v4.0.30319 / Config / machine.config

ステップ3:次の例のように、DDL生成テンプレート``SSDLToPgSQL.tt``をVisual Studioの``EntityFramework Tools / DBGen /``フォルダーに配置します。

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\EntityFramework Tools\DBGen\

注釈

EDMXファイルのプロパティでこのテンプレート``SSDLToPgSQL.tt``を選択します。

ステップ4:ファイル``EnterpriseDB.EDBClient.dll``および``EntityFramework6.EnterpriseDB.EDBClient.dll``をプロジェクト参照に追加します。 :ref: `ライブラリファイルの参照を参照してください。 <referencing_the_library_files> `ライブラリファイルの参照に関する情報。

ステップ5:プロジェクトの``app.config``ファイルで、EntityFramework / providersタグの下にプロバイダーサービスの次のエントリを追加します。

<provider invariantName="EnterpriseDB.EDBClient"
  type="EnterpriseDB.EDBClient.EDBServices, EntityFramework6.EnterpriseDB.EDBClient">
</provider>

以下は``app.config``ファイルの例です。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>

    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>

  <entityFramework>
    <providers>
      <provider invariantName="EnterpriseDB.EDBClient" type="EnterpriseDB.EDBClient.EDBServices, EntityFramework6.EnterpriseDB.EDBClient"></provider>
    </providers>
  </entityFramework>

  <system.data>
    <DbProviderFactories>
      <remove invariant="EnterpriseDB.EDBClient"/>
      <add name="EnterpriseDB Data Provider" invariant="EnterpriseDB.EDBClient" support="FF" description=".Net Framework Data Provider for EDB Postgres" type="EnterpriseDB.EDBClient.EDBFactory, EnterpriseDB.EDBClient"/>
    </DbProviderFactories>
  </system.data>

</configuration>