AddOracleTypesDeserialization

この静的メソッドは、ODP.NET固有のデータ型を許可リストに追加して、DataSetまたはDataTableへのデシリアライゼーションを許可します。

宣言

// C#
public static void AddOracleTypesDeserialization();

備考

新しい.NETバージョンでは、セキュリティ上の理由から、許可されたデシリアライズ可能なDataSetおよびDataTableデータ型が制限されるようになりました。この変更は、.NET 5および.NET Coreと.NET Frameworkの更新に適用されます。アプリケーションDataSetsおよびDataTablesがこれらの新しい.NETバージョンのいずれかでOracleデータ型を使用する場合は、AddOracleTypesDeserializationメソッドを使用してODP.NET固有のデータ型を許可リストに追加し、デシリアライズできるようにします。ODP.NET固有のタイプを許可リストに追加せずにデシリアライズしようとすると、ODP.NETタイプ・イニシャライザ例外が発生します。

アプリケーションの一部である他のソフトウェアも許可リストにデータ型を追加する場合は、ODP.NETで許可されている型を上書きしないように注意してください。許可リストに追加のみ行い、上書きしないでください。上書きが発生した場合は、後でAddOracleTypesDeserializationメソッドをコールしてODP.NETタイプをリストに戻します。

ODP.NET AddOracleTypesDeserializationメソッド・コール自体が許可リストに追加されます。既存のエントリは上書きされません。

このプロパティはODP.NET 19.10以上で使用できます。また、最新のODP.NET 18c、12.2および12.1パッチにバックポートされています。

// C#
// Sample demonstrating loading an XML file with Oracle data types into DataSet
 
using System.Data;
using Oracle.ManagedDataAccess.Client;
 
class OracleTypeDeserializationSample
{
    static void Main()
    {
      OracleConfiguration.AddOracleTypesDeserialization();
      DataSet ds = new DataSet();
      ds.ReadXml("dsch1.xml");
    }
}