0

我正在检查 VistaDB5 安装附带的 EntityFrameworkBasics 示例项目。当我尝试构建项目时,它成功编译,尽管下面给出了错误消息:

错误 1 ​​错误 168:在“VistaDB.Provider.VistaDBProviderFactory”类型的存储提供程序实例上调用“GetService”方法后返回空值。商店提供程序可能无法正常运行。C:\Users\Public\Documents\VistaDB 5\Samples\Entity Framework\Basics\EFSampleCRUD\EmployeeModel.edmx 7 7 EFSampleCRUD

我没有更改对项目文件的任何更改。app.config 文件如下:

<?xml version="1.0" encoding="utf-8"?>
 <configuration>
   <connectionStrings>
    <add name="Entities" connectionString="metadata=res://*/EmployeeModel.csdl|res://*/EmployeeModel.ssdl|res://*/EmployeeModel.msl;provider=System.Data.VistaDB5;provider connection string='Data Source=&quot;SimpleDB.vdb5&quot;'" providerName="System.Data.EntityClient"/>
  </connectionStrings>
  <system.data>
    <DbProviderFactories>
    <remove invariant="System.Data.VistaDB5" />
     <add invariant="System.Data.VistaDB5" name="VistaDB 5 Data Provider"
       description="VistaDB 5 ADO.NET Provider for .Net 4"
       type="VistaDB.Provider.VistaDBProviderFactory, VistaDB.5.NET40" />
    </DbProviderFactories>
    </system.data>
   </configuration>

但是,成功构建后,运行应用程序时没有错误。此外,如果我添加一个新的 ADO.NET 实体数据模型并选择从数据库生成并单击新连接,我在 VS2012 的数据源或数据提供程序部分看不到 VistaDB5

4

1 回答 1

0

为了解决在 Visual Studio 设计人员中看到 VistaDB5 的问题,我建议检查两件事 -

  1. 卸载并重新安装 VistaDB 5。安装与 Visual Studio 集成,将自身注册为 DDEX 提供程序,将其列入相关列表。仅仅拥有 VistaDB 程序集是不够的。
  2. 如果您曾经安装过用于 EF 6 的工具,请安装最新的 EF 6 工具。此工具取代了以前的设计人员,并且在少数情况下,该工具会导致第三方提供商(如 VistaDB)出现问题。

如果这不能解决问题,我建议您联系我们并在以下网址开票: support.gibraltarsoftware.com

于 2014-09-18T14:16:59.200 回答