CloudNimble.LinqPad.Drivers.EF6Core 2.0.4

dotnet add package CloudNimble.LinqPad.Drivers.EF6Core --version 2.0.4
NuGet\Install-Package CloudNimble.LinqPad.Drivers.EF6Core -Version 2.0.4
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CloudNimble.LinqPad.Drivers.EF6Core" Version="2.0.4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CloudNimble.LinqPad.Drivers.EF6Core --version 2.0.4
#r "nuget: CloudNimble.LinqPad.Drivers.EF6Core, 2.0.4"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install CloudNimble.LinqPad.Drivers.EF6Core as a Cake Addin
#addin nuget:?package=CloudNimble.LinqPad.Drivers.EF6Core&version=2.0.4

// Install CloudNimble.LinqPad.Drivers.EF6Core as a Cake Tool
#tool nuget:?package=CloudNimble.LinqPad.Drivers.EF6Core&version=2.0.4

CloudNimble's LINQPad Drivers for EF6 on .NET Core

Build status Release status NuGet

What is this?

The team at BurnRate.io leverages EF6 and Microsoft.Data.SqlClient to power our game-changing tools for scaling companies. We use LINQPad for testing out our services and Blazor apps, as well as prototyping new features.

But the existing EF6 drivers don't support Microsoft.Data.SqlClient.

So we built our own.

This version takes a simpler approach to EF6 support that takes advantage of our extensive experience with EF metadata to provide a more robust experience.

Features

  • Uses Microsoft.Data.SqlClient without metadata changes
  • Uses the very latest dependencies that avoid Azure vulnerabilities
  • Faster schema loading
  • Multiple EntityContainer support
  • Correctly labels primary and foreign key relationships
  • Improved connection experience with built-in connection testing
  • Updated connection icons
  • Demonstrates advanced XAML techniques for LINQPad drivers
  • Supports LINQPad 6 and later

Dependencies

  • ErikEJ.EntityFramework.SqlServer
  • Microsoft.Data.SqlClient
  • ModernWpfUI
  • SharpVectors.WPF
  • Z.EntityFramework.Plus.EF6

Installation

  1. Open LINQPad 6 or later and click "Add connection" in the connection tree.

  2. In the "Choose Data Context" dialog, select "View more drivers" in the bottom left corner. Choose Data Context

  3. In the "LINQPad NuGet Manager" dialog, select the "Show all drivers" option at the top of the center column.

  4. Search for CloudNimble.LinqPad.Drivers.EF6Core and install it. Installing the Driver

  5. Close the dialog.

Supported DbContexts

Your DbContext must have a public constructor accepting a nameOrConnectionString string as a parameter:

public class MyDbContext : DbContext
{

    public MyDbContext(string nameOrConnectionString) : base(nameOrConnectionString)
    {
    }

}

Configuration

  1. You should now see "EF6 + Microsoft.Data.SqlClient on .NET 6 and later" in the "Choose Data Context" dialog. Select it and click "Next". Selection

  2. You will be presented with the dialog below. Configuration

  3. Start by entering a name for the connection.

  4. Click the first orange "Browse" link and select the assembly containing your DbContext.

  5. Click the second orange "Choose" link and select your DbContext type.

  6. Either select your appSettings.json file or an app.config file in the third orange "Browse" link, or enter a connection string directly in the fourth textbox.

  7. Click "Test Connection" and observe the results, making changes as necessary.

  8. Click "Create Connection" to complete the process.

Known Issues

  1. The EF6MemberProvider needs further updates to reduce its reliance on Reflection.

Troubleshooting

  1. If you're using a configuration file and you get an error that says "The connection string '[SomeName]' cannot be found", try switching to using a raw connection string instead.
Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net7.0-windows7.0 is compatible.  net8.0-windows was computed.  net8.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.4 81 3/16/2024
2.0.3 145 1/10/2024
2.0.3-CI-20240316-125103 36 3/16/2024
2.0.2 54 1/10/2024
2.0.1 89 12/21/2023
2.0.0-CI-20240110-184126 51 1/10/2024
2.0.0-CI-20231221-182327 51 12/21/2023
2.0.0-CI-20231212-132715 78 12/12/2023
2.0.0-CI-20231212-000342 55 12/12/2023
2.0.0-CI-20231211-235744 59 12/12/2023
2.0.0-CI-20231211-233849 53 12/12/2023