This project has moved and is read-only. For the latest updates, please go here.

The Effort library failed to register its provider automatically

Apr 29, 2016 at 12:18 AM
Edited Apr 29, 2016 at 12:19 AM
OVERVIEW
Using Fitnesse with EF6, can't get Effort to start up.
I've tried every trick in all the posts I can find.

So far,
I have "Effort.Provider" in the DbProviderFactories section in machine.config.
I have Effort.Provider showing up when I look at DbProviderFactories.GetFactoryClasses();
ProcMon shows that it is looking for and finding Effort.dll.

Also tried,
"Effort.Provider" in the entityFramework section of Runner.exe.config but couldn't get that to work. Just crashed the app.
Uninstalling EF and Effort.EF6 and re-installing. No visible effect.
Calling Effort.Provider.EffortProviderConfiguration.RegisterProvider(); from a class constructor and various startup locations. Effort.Provider never showed up in DbProviderFactories.GetFactoryClasses();
"Effort.Provider" in the DbProviderFactories section in app.config. It shows up in GetFactoryClasses just as well as machine.config.

Result,
Any of
DbConnectionFactory.CreateTransient();
Effort.EntityConnectionFactory.CreateTransient(connectionString);
DbProviderFactory dataFactory = DbProviderFactories.GetFactory(dt.Rows[5]);
throw
Effort.Exceptions.EffortException: The Effort library failed to register

Using
Windows 10
.Net 4.6
VS 2016
EF 6.1.2 (although it says 6.1.3 is installed, not sure what that means)

Do I need to register a DLL or something?

Details,
App.config
<configuration>
<runtime>
    <loadFromRemoteSources enabled="true"/>
</runtime>
<system.data>
    <DbProviderFactories>
        <add name="Effort.Provider" invariant="Effort.Provider" description="Effort.Provider" type="Effort.Provider.EffortProviderFactory, Effort" />
    </DbProviderFactories>
</system.data>
</configuration>