PSQL v13 R2 ADO.NET データ プロバイダー 4.3（.NET Standard 2.0 用）リリース ノート
一般リリース – 2019 年 3 月
目次
このファイルには以下の項目が含まれています。

• | PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）について

• | 要件

• | はじめに

• | 既知の問題と使用に関する注意

PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）について
PSQL v13 R2 から、バージョン 2.0 の .NET Standard 仕様の .NET API と互換性のある .NET 実装を持つシステムで実行するアプリケーションでは、PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）を使用できるようになりました。互換性の詳細については、 要件を参照してください。
この新しいプロバイダーと PSQL ADO.NET データ プロバイダー（.NET Framework 用）が対象とするシステムは異なることに留意してください。

• | バージョン 2.0 の .NET Standard 仕様は、.Net Framework 4.6.1 以降のバージョンの .Net Framework でのみ実装されます。

• | PSQL ADO.NET データ プロバイダー（.NET Framework 用）は、.NET Framework 3.5 SP1 以降のバージョンの .NET Framework をサポートします。

.NET Framework 4.6.0 以前が実装されたターゲット システムで実行する必要のあるアプリケーションを作成する場合は、PSQL データベース エンジンと一緒にインストールされる PSQL ADO.NET データ プロバイダー（.NET Framework 用）を使用してください。PSQL ADO.NET データ プロバイダー（.NET Framework 用）に関する詳細については、当該プロバイダーの SDK を参照してください。
新しいデータ プロバイダーの制限事項については、 既知の問題と使用に関する注意を参照してください。
要件
PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）を使用するアプリケーションを開発するには、次の要件を満たす必要があります。

• | アプリケーションのターゲット システムでは、バージョン 2.0 の .NET Standard 仕様の .NET API に準拠した .NET 実装が実行されている必要があります。該当する .NET 実装として次のものがあります。

• | .NET Core 2.0 以降を対象とする .NET アプリケーション

• | ユニバーサル Windows プラットフォーム 10.0.16299 以降

• | .NET Framework 4.6.1 以降

バージョン 2.0 の .NET Standard 仕様をサポートするプラットフォーム バージョンの完全な一覧については、Microsoft が提供する .NET 実装のサポート一覧を参照してください。

• | 開発システムにインストールされている Visual Studio のバージョンは 2017 以降である必要があります。

• | .NET Core 2.0 を対象とするアプリケーションを作成するには、開発システムに以下がインストールされている必要があります。

• | Visual Studio 2017 バージョン 15.3.0 以降が、.NET Core クロスプラットフォーム開発ワークロードも含めてインストールされている。

• | .NET Core SDK バージョン 2.0 以降。

• | .NET Core 2.1 を対象とするアプリケーションを作成するには、開発システムに以下がインストールされている必要があります。

• | Visual Studio 2017 バージョン 15.7.0 以降が、.NET Core クロスプラットフォーム開発ワークロードも含めてインストールされている。

• | .NET Core SDK バージョン 2.1 以降。ARM 版 Windows を対象とする .NET Core アプリケーションを公開する場合は、入手可能な最新バージョンの .NET Core SDK もインストールされている必要があることに注意してください。

• | UWP アプリケーションを作成するには、アプリケーション設定で、ターゲットの最小バージョンとして Windows 10 Fall Creators Update（10.0; ビルド 16299）以降を選択する必要があります。この設定は、開発システムに 10.0.16299 以降の Windows ソフトウェア開発キットがインストールされている場合の Visual Studio において、UWP プロジェクトに対してのみ使用できます。UWP アプリケーションが、最小バージョンの 10.0.16299 より新しい Windows 10 を対象とする場合には、Visual Studio によってプロジェクトに自動的に追加される Microsoft.NETCore.UniversalWindowsPlatform の NuGet パッケージは、バージョン 6.1.9 以降である必要があります。

はじめに
PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）のアセンブリ ファイル名は、PSQL.Data.SqlClientStd.dll です。PSQL ADO.NET データ プロバイダー（.NET Framework 用）と異なり、この新しいアセンブリは .NET Framework グローバル アセンブリ キャッシュ（GAC）にインストールされず、また PSQL データベース エンジンと一緒にインストールされません。新しいアセンブリは、この SDK パッケージにバンドルされている NuGet パッケージを通じてのみ使用することができ、Visual Studio プロジェクトに追加する必要があります。
新しいプロバイダーを含んでいる NuGet パッケージは、Visual Studio 2017 以降のバージョンの Visual Studio でのみサポートされます。NuGet パッケージを Visual Studio プロジェクトに追加するには、ローカルの NuGet パッケージを参照するように NuGet パッケージ マネージャーを構成する必要があります。これは、［ツール］>［オプション］ダイアログの［NuGet パッケージ マネージャー］の下にある［パッケージ ソース］設定に、ローカルの NuGet パッケージが格納されているフォルダーのパスを追加することで行えます。
記載されている手順は、Visual Studio Enterprise 2017 に基づいています。別のバージョンまたはエディションの Visual Studio を使用している場合は、手順が異なる場合があります。
プロバイダーの参照
PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）の参照は、NuGet パッケージが Visual Studio プロジェクトに追加されるときに、自動的にそのプロジェクトに追加されます。

► | サンプル アプリケーションを作成するには

この例では、プロバイダーを参照するアプリケーションを作成します。

1 | Visual Studio で、バージョン 2.0 の .NET Standard 仕様と互換性のあるアプリケーション、クラス ライブラリ、ランタイム コンポーネントなどの出力をビルドできるプロジェクト テンプレートを選択して、新しいプロジェクトを作成します。

• | コンソール アプリ（.NET Core）

• | クラス ライブラリ（.NET Standard）

• | 任意のユニバーサル Windows プロジェクト テンプレート

以下の手順は、明記していない限り、コンソール アプリ（.NET Core）プロジェクト テンプレートを使用しています。
メモ：ユニバーサル Windows プロジェクト テンプレートを選択すると、UWP アプリケーションがサポートするターゲット プラットフォームのバージョンとプラットフォームの最小バージョンを選択するように求められます。最小バージョンとして Windows 10 Fall Creators Update（10.0; ビルド 16299）以降を選択する必要があります。このバージョンがリストされない場合は、開発環境に適切なバージョンの Windows ソフトウェア開発キットがインストールされているかどうかを確認してください。

2 | ［ビルド］ペインの［全般］設定で、［条件付きコンパイル シンボル］に「NETCOREAPP2.0」と入力します。

メモ：ユニバーサル Windows の空白のアプリ プロジェクトの種類を使用しており、リモート システム上の PSQL データベースに接続する必要がある場合は、package.appxmanifest ファイルを開き、［機能］タブで［プライベート ネットワーク（クライアントとサーバー）］をオンにします。

3 | PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）SDK には、Pervasive.Data.SqlClientStd.4.3.0.nupkg という名前の NuGet パッケージが含まれています。Visual Studio で、［ツール］>［オプション］メニュー、［NuGet パッケージ マネージャー］を選択し、このパッケージをプロジェクトに追加します。

4 | アプリケーションをコーディングします。

新しいプロバイダーは、同じ名前空間、Pervasive.Data.SqlClient を PSQL ADO.NET データ プロバイダー（.NET Framework 用）として共有しますが、サポートする .NET API は .NET Standard 2.0 仕様の部分のみです。コード内でのプロバイダーの名前空間の使用方法については、『PSQL Data Provider for .NET Guide』を参照してください。.NET Framework 用プロバイダーではサポートされ、.NET Standard 2.0 用プロバイダーではサポートされない .NET API に関する情報については、 既知の問題と使用に関する注意を参照してください。

5 | これで、アプリケーションをビルドできるようになりました。

ドキュメント
.NET アプリケーションの開発方法の詳細については、PSQL 開発者ドキュメントの『PSQL Data Provider for .NET Guide』および『PSQL Programmer's Guide』を参照してください。
サンプル
以下の表は、Samples ディレクトリにある、PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）によって提供されるサンプルの要約です。

ディレクトリ | サンプル | サンプルの目的
Provider\netstandard2.0 | AdoNetCore2_0ProviderTest | 2 つのパラメーターを使用する、.NET Core コマンド ライン アプリケーションを作成します。
• | -connection <"接続文字列">：PSQL データベース接続文字列
• | -sql <"実行する SQL コマンド">：接続後に実行する SQL ステートメント
Provider\netstandard2.0 | BasicCRUD | PSQL データベースに対して作成、読み取り、更新、削除といった基本的なタスクを実行する、.NET Core コマンド ライン アプリケーションを作成します。
Provider\netstandard2.0\UWP | UWP_Sample | PSQL 接続をテストするためのボタンを持つ、UWP アプリケーションを作成します。.

次の例は、上の表内の最初のサンプルを示しています。
dotnet .\AdoNetCore2_0ProviderTest.dll -connection "Host=localhost;Port=1583;Database=demodata;" -sql "SELECT * FROM Billing;"
既知の問題と使用に関する注意
PSQL の既知の問題はすべて PSQL Web サイトで公開されています。
PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）では、以下の PSQL ADO.NET データ プロバイダー（.NET Framework 用）の機能をサポートしていません。

• | PSQL Data Tools の Visual Studio 統合

.NET Standard 2.0 プロバイダーでは、PSQL ADO.NET データ プロバイダー（.NET Framework 用）SDK の Data Tools をまだサポートしていないため、PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）SDK は Visual Studio に Tools を統合しません。Framework SDK Tools を以前に統合した場合、それらは GAC にインストールされた .NET Framework プロバイダーでのみ機能します。

• | Entity Framework

.NET Standard 2.0 のデータ プロバイダーは、Entity Framework 開発をサポートしていません。

• | パフォーマンス カウンター

パフォーマンス カウンターは、.NET Standard 2.0 ではサポートされません。

• | エンコード

プロバイダーはクロスプラットフォーム開発向けであるため、常に、オペレーティング システムのデフォルトのエンコードを選択します。

• | CreatePermission(PermissionState) メソッド

CreatePermission(PermissionState) メソッドは、.NET Standard 2.0 ではサポートされません。

• | ファイル スキーマ

PSQL ADO.NET データ プロバイダー（.NET Framework 用）は、ユーザーにデータをプッシュする際、Char、VarChar、および LongVarChar 列の Encoding.BodyName を書き込みます。Encoding.BodyName は .NET Standard 2.0 ではサポートされていないため、PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）は代わりに Encoding.WebName を使用します。
UWP アプリケーション
次の条件の両方に当てはまる場合は、UWP アプリケーションの最小バージョンを選択するように求められます。

• | 最小バージョンとして Windows 10 Fall Creators Update（10.0; ビルド 16299）以降を選択している。

• | Visual Studio によってプロジェクトに自動的に追加される Microsoft.NETCore.UniversalWindowsPlatform の NuGet パッケージのバージョンが 6.1.9 より前である。

その後、PSQL ADO.NET データ プロバイダー（.NET Standard 2.0 用）を使用してビルドされたアプリケーションは、次のランタイム エラーを報告します。
Exception: Could not load file or assembly 'System.Runtime.CompilerServices.Unsafe, Version=4.0.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.The system cannot find the file specified.
この問題を修正するには、［NuGet パッケージ マネージャー］を開いて、Microsoft.NETCore.UniversalWindowsPlatform パッケージをバージョン 6.1.9 以降に更新します。
免責事項
ACTIAN CORPORATION は、本ソフトウェアおよびドキュメントの使用を、利用者またはその会社に対して「現状のまま」で、かつ同梱の使用許諾契約書に記載の契約条件によってのみ許諾するものです。
Copyright © 2019 Actian Corporation. All Rights Reserved.