【问题标题】:JetEntityFrameworkProvider - database firstJetEntityFrameworkProvider - 数据库优先
【发布时间】:2018-02-18 19:46:18
【问题描述】:

我一直无法让 JetEntityFrameworkProvider 工作。想要连接到 MS2016 访问数据库的几个问题/cmets(为 JetEntityFrameworkProvider 运行 VS2017、6.4.1 nuGet)。

  • 我观看了视频,但是当我查看最新 zip 中的文件时,没有 Key.snk 文件。我添加了自己的,但不确定是否需要更改其他内容?

  • 1234563 2 行到 AssemblyInfo.cs,然后抱怨它们已经存在:

[程序集:AssemblyVersion("6.1.4.0")] [程序集:AssemblyFileVersion("6.1.4.0")]

  • 预构建命令没有找到 vsvars32.bat,所以我将其更改为: 调用“C:\Program Files (x86)\Common7\Tools\vsvars32.bat” gacutil /u JetEntityFrameworkProvider.dll

  • 我正在运行 VS2017。我将 install.config 更新为:SET REGROOT=SOFTWARE\Microsoft\VisualStudio\14.0_Config。我在注册表中看到键 HKEY_USERS\S-1-5-21-3512878864-1034292029-1113751564-1001\Software\Microsoft\VisualStudio\14.0_Config\DataProviders{52C271ED-FAE1-444E-8C3A-6DFEC4C3A974},但 PlatformVersion 是 2 . 这应该是 6.4.1 (?)

当我首先尝试为数据库创建我的 edmx 文件时,我只列出了 SQL Server 数据提供程序,因此试图找出我出错的地方。

谢谢 瞌睡虫

【问题讨论】:

  • 抱歉,最后一个项目符号应该是 6.1.4,而不是 6.4.1。

标签: jet-ef-provider


【解决方案1】:

问题可能是 DDEX 注册(您尝试在注册表上进行的注册)或提供程序的版本。 关于 DDEX 可能最简单的方法是在当前用户中设置注册表项,这样您就可以确定您选择了正确的用户。
VS2017是14版还是15版?这可能是另一个问题。我从未尝试为 VS2017 注册提供程序。
另一件事是,在尝试运行 DDEX 提供程序之前,您需要在项目中安装提供程序。通常我在 NuGet 上使用那个。我安装提供程序,编译项目,退出并进入 VS,然后在提供程序列表中看到 DDEX 提供程序。

【讨论】:

    猜你喜欢
    • 2023-03-11
    • 1970-01-01
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 2011-07-23
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    相关资源
    最近更新 更多