具有不变名称“ JetEntityFrameworkProvider”的ADO.NET提供程序未在计算机或应用程序配置文件中注册

问题描述

我想将我的主页连接到Access-DB。为此,我使用:

  • .NET Framework 4.72 API
  • EntityFrameworkProvider.Jet

当我尝试运行它时,我收到以下消息

System.ArgumentException:具有不变名称'JetEntityFrameworkProvider'的ADO.NET提供程序未在计算机或应用程序配置文件注册,或者无法加载。 Zeile 24:var结果=来自上下文中的Daten_ALT Zeile 25:选择Daten_ALT;

我的homecontroller.cs中的这段代码看起来像这样:

using Sammler_Homepage.Models;
using System.Linq;
using System.Web.Mvc;

namespace Sammler_Homepage.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult SammlungView()
        {
            Sammlung Sammlungsql = new Sammlung();
            ContextDB context = new ContextDB();

            var result = from Daten_ALT in context.Sammlung
                         select Daten_ALT;

            foreach (Sammlung sammlung in result)
            {
                Sammlungsql.Nummer = sammlung.Nummer;
            }
            ViewBag.Message = Sammlungsql;
            ViewBag.Title = "SammlungView";
            return View();
        }
    }
}

我的ContextDB.cs:

using System.Data.Entity;
using Microsoft.Ajax.Utilities;
using Microsoft.EntityFrameworkCore;

    namespace Sammler_Homepage.Models
{
    public class ContextDB : DbContext
    {
        public ContextDB() : base("DefaultConnection")
        {
        }

        public DbSet<Sammlung> Sammlung { get; set; }
    }
}

我的packages.config(减少至重要部分):

<packages xmlns="urn:packages">
  <package id="EntityFramework" version="6.4.4" targetFramework="net472" />
  <package id="EntityFrameworkCore.Jet" version="2.2.0" targetFramework="net472" />
  <package id="Microsoft.EntityFrameworkCore" version="3.1.8" targetFramework="net472" />
  <package id="Microsoft.EntityFrameworkCore.Abstractions" version="3.1.8" targetFramework="net472" />
  <package id="Microsoft.EntityFrameworkCore.Analyzers" version="3.1.8" targetFramework="net472" />
  <package id="Microsoft.EntityFrameworkCore.Design" version="3.1.8" targetFramework="net472" developmentDependency="true" />
  <package id="Microsoft.EntityFrameworkCore.Relational" version="3.1.8" targetFramework="net472" />
<package id="Remotion.Linq" version="2.2.0" targetFramework="net472" />
</packages>

和web.config(简化为重要部分):

<configuration>
  <configSections>
  <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection,EntityFramework,Version=6.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <appSettings>
    <add key="webpages:Version" value="3.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>
  <connectionStrings>
    <!--add name="DefaultConnection" connectionString="Provider=Microsoft.ACE.OleDB.12.0; Data source=C:\...\AKneu.mdb" providerName="JetEntityFrameworkProvider" /-->
    <add name="DefaultConnection" connectionString="Data source=C:\...\AKneu.mdb" providerName="JetEntityFrameworkProvider" />
    <!--add name="DefaultConnection" connectionString="Data source=C:\...\AKneu.mdb" providerName="EntityFrameworkProvider.Jet" /-->
  </connectionStrings>
  <system.web>
    <compilation debug="true" targetFramework="4.7.2" />
    <httpRuntime targetFramework="4.7.2" />
  </system.web>    
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory,EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.sqlClient" type="System.Data.Entity.sqlServer.sqlProviderServices,EntityFramework.sqlServer" />
      <!--provider invariantName="EntityFrameworkCore.Jet" type="Microsoft.EntityFrameworkCore.Jet,Microsoft.EntityFrameworkCore"/-->
      <!--provider invariantName="JetEntityFrameworkProvider" type="JetEntityFrameworkProvider.JetProviderServices,JetEntityFrameworkProvider"/-->
    </providers>
  </entityFramework>
</configuration>

如您所见,commets是我尝试解决方法。但这没有帮助。你有什么建议吗?是因为Linq吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)