Skip to content

Commit

Permalink
CSHARP-4206: Update LINQ3 docs to note that the LINQ3 provider is pro…
Browse files Browse the repository at this point in the history
…duction-ready. (#844)
  • Loading branch information
JamesKovacs authored Jul 6, 2022
1 parent 0b606c1 commit 2f9e964
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions Docs/reference/content/reference/driver/crud/linq3.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,13 @@ title = "LINQ3"

## LINQ3

We are in the process of rewriting our LINQ provider. The new LINQ provider is known as LINQ3. The current LINQ provider is known as LINQ2 (and LINQ1 is the now obsolete LINQ provider in the v1.x releases of the driver).
We have implemented a new LINQ provider, which is known as LINQ3. The current LINQ provider is known as LINQ2 (and LINQ1 is the now-obsolete LINQ provider in the v1.x releases of the driver).

While we fully transition to the new LINQ provider the two LINQ providers will exist side by side, and LINQ2 will continue to be the default LINQ provider for the time being.
While we fully transition to the new LINQ provider the two LINQ providers will exist side by side. LINQ2 will continue to be the default LINQ provider for the time being.

In version 2.14.0 of the driver we are making the new LINQ provider available in beta form. In order to use it you have to configure your client to use the new LINQ provider, as follows:
LINQ3 is production-ready. It fixes many LINQ2 bugs and offers support for a variety of new aggregation pipeline features present in newer server versions. We encourage all users to switch to LINQ3 and report any issues encountered. The [MongoDB Analyzer](https://www.mongodb.com/docs/mongodb-analyzer/current/) will provide tooltips indicating whether a particular query is supported in LINQ2, LINQ3, or both.

You can opt into the new LINQ3 provider by configuring your `MongoClient` to use the new LINQ provider as follows:

```csharp
var connectionString = "mongodb://localhost";
Expand All @@ -24,4 +26,4 @@ clientSettings.LinqProvider = LinqProvider.V3;
var client = new MongoClient(clientSettings);
```

The LINQ provider is only configurable at the client level. All LINQ queries run with a particular client use the same LINQ provider.
The LINQ provider is only configurable at the `MongoClient` level. All LINQ queries run with a particular `MongoClient` use the same LINQ provider.

0 comments on commit 2f9e964

Please sign in to comment.