Overview
このページでは、 .NET/ C#ドライバーをバージョン 2 .x にアップグレードするときにアプリケーションに加える必要がある変更について説明します。
アップグレード方法
このページの各セクションでは、ドライバー バージョンによって導入される可能性のある重大な変更を一覧にしています。 .NET/ C#ドライバーをバージョン 2 .x にアップグレードするには、次の手順に従います。
- [ 互換性 ] ページを確認して、新しいドライバー バージョンが、アプリケーションが接続するMongoDB Server のバージョン およびアプリケーションが実行される.NETまたは.NETフレームワークのバージョンと互換性があることを確認します。 
- アプリケーションが使用するドライバー バージョンとターゲットのアップグレード バージョン間の重大な変更については、「 バージョン別の重大な変更 」セクションを参照してください。 - 例- ドライバーを v2.14 から v2.21 にアップグレードする場合は、 v 以降のバージョンからのすべての重大な変更に対処します。2.14(v 2.19 )、v 2.21 の変更を含む。 
バージョン別の重大な変更
次のセクションでは、各ドライバー バージョンによって導入される可能性のある重大な変更について説明します。 このセクションにドライバーのバージョンが含まれていない場合は、重大な変更は導入されません。
バージョン 2.28.0重大な変更
- ドライバーは、すべてのドライバー コンポーネントに対して強力な名前を使用します。 アプリケーションに複数の.NET/ C#ドライバーのバージョンを参照する依存関係がある場合は、次の例に示すように、バインディング リダイレクトを作成する必要があります。 - <configuration> - <runtime> - <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> - <dependentAssembly> - <assemblyIdentity name="MongoDB.Driver" - publicKeyToken="94992a530f44e321" - culture="neutral" /> - <bindingRedirect oldVersion="2.28.0.0" - newVersion="<version number to use>" /> - </dependentAssembly> - <dependentAssembly> - <assemblyIdentity name="MongoDB.Bson" - publicKeyToken="94992a530f44e321" - culture="neutral" /> - <bindingRedirect oldVersion="2.28.0.0" - newVersion="<version number to use>" /> - </dependentAssembly> - <dependentAssembly> - <assemblyIdentity name="MongoDB.Driver.Core" - publicKeyToken="94992a530f44e321" - culture="neutral" /> - <bindingRedirect oldVersion="2.28.0.0" - newVersion="<version number to use>" /> - </dependentAssembly> - </assemblyBinding> - </runtime> - </configuration> 
バージョン2.21.0 重大な変更
- このドライバーは、 MongoDB Search ビルダの - Renderメソッドの署名を変更します。以前のドライバー バージョンでは、これらのメソッドは次の署名を持っていました。- Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry); - バージョン 2.21.0 以降では、 - Renderメソッドは次の署名を持ちます。- Render(SearchDefinitionRenderContext<TDocument> renderContext); 
バージョン2.19.0 重大な変更
- ObjectSerializerは、安全であると見なされる型の逆直列化のみを許可します。 特に指定されていない場合、- ObjectSerializerは- ObjectSerializer.DefaultAllowedTypesによって返された型を使用します。- ObjectSerializerの詳細については、 FAQ をご覧ください。- DefaultAllowedTypesの詳細については、 APIドキュメント をご覧ください。
- デフォルトの - LinqProviderは LINQ 3に変更されました。 次のコード例に示すように、- MongoClientSettingsで LINQ 2用に- LinqProviderを構成することができます。- var connectionString = "<connection string>"; - var clientSettings = MongoClientSettings - .FromConnectionString(connectionString); - clientSettings.LinqProvider = LinqProvider.V2; - var client = new MongoClient(clientSettings); - アプリケーションでLINQ3 - -1プロバイダーを使用している場合、配列を更新するときに位置演算子を表すために を使用することはできません。位置演算子 の使用方法については、「 1 つの更新 」と「 多数の更新 」を参照してください。
バージョン 2.14.0 重大な変更
- ドライバーはMongoDB Server v 3.4 以前のサポートを削除します。MongoDB Serverは v 3.6 以降にアップグレードする必要があります。 - MongoDB Server配置をアップグレードする方法については、 MongoDB Serverマニュアルの リリースノート を参照してください。.NET/ C#ドライバーとMongoDB Server間の互換性の詳細については、互換性 ページを参照してください。 
- ドライバーは.NETフレームワークv 4.5.2 以前のサポートを削除します。アプリケーションでは、 .NET フレームワーク v 4.7.2 以降、 .NET Core 2 .x 以降、 .NET 5 以降を使用する必要があります。 - .NET/ C#ドライバーと.NET間の互換性の詳細については、互換性 ページを参照してください。 
- ドライバーは.NET Standard v 1.5 のサポートを削除します。アプリケーションでは、 .NET Standard v 2.0 以降を使用する必要があります。