Visual Studio错误175:在配置中找不到指定的存储提供程序,或者该存储提供程序无效-但是该提供程序位于文件中

时间:2018-09-25 09:45:22

标签: oracle visual-studio

我加入了Visual Studio上的一个项目;我是通过SVN获得文件的,但是当我尝试构建代码时,出现错误175:在配置中找不到指定的存储提供程序,或者该存储提供程序无效。 错误发生在我的edmx文件中,介于<edmx:StorageModels></edmx:StorageModels>之间,所有内容都带有下划线。

这是提供者造成混乱的地方:

    <Schema Namespace="EntityModel.Store" Provider="Oracle.ManagedDataAccess.Client" ProviderManifestToken="11.2" Alias="Self" xmlns="http://schemas.microsoft.com/ado/2009/11/edm/ssdl">

我检查了Visual Studio中的引用,并且确实有“ Oracle.ManagedDataAccess”。当我检查参考中的路径时,它确实显示了一个包含Oracle.ManagedDataAccess.dll的路径。

此外,我使用WinMerge将我的Oracle.ManagedDataAccess.dll与正在项目中某人的计算机上运行的文件进行比较,它们是相同的。

那么您是否知道我为什么会出现此错误? 非常感谢您的帮助!

编辑

大家好, 因此,我通过在C:\ oracle \ product \ 12.1.0 \ client_3 \ odp.net \ managed \ x86文件(这里有Oracle.ManagedDataAccessDTC.dll)中执行.bat来解决该问题。 我现在确实还有另一个问题:

  

错误1找不到类型或名称空间名称'DataSetStorage'(您是否缺少using指令或程序集引用?)

我会仔细研究一下,并让您知道,以防有人偶然发现相同的问题:)

最后编辑!

所以我删除了所有来源,然后从朋友的PC上再次复制了它们,现在可以使用了!

1 个答案:

答案 0 :(得分:0)

也许Oracle.ManagedDataAccess配置不正确。当然,您可以编辑.config文件,但可以自动创建。运行此脚本,即选择所需的行:

SETLOCAL

set Oracle_x64=c:\oracle\product\12.1\Client_x64\odp.net
set Oracle_x86=c:\oracle\product\12.1\Client_x86\odp.net

set OraProvCfg_x64=%Oracle_x64%\bin\4\OraProvCfg.exe
set OraProvCfg_x86=%Oracle_x86%\bin\4\OraProvCfg.exe

set TNS_ADMIN=C:\oracle\network\admin


"%OraProvCfg_x64%" /action:gac /providerpath:%Oracle_x64%\managed\common\Oracle.ManagedDataAccess.dll
"%OraProvCfg_x64%" /action:gac /providerpath:%Oracle_x64%\managed\PublisherPolicy\4\Policy.4.121.Oracle.ManagedDataAccess.dll
"%OraProvCfg_x64%" /action:gac /providerpath:%Oracle_x64%\managed\PublisherPolicy\4\Policy.4.122.Oracle.ManagedDataAccess.dll

"%OraProvCfg_x64%" /action:config /product:odpm /frameworkversion:v4.0.30319 /providerpath:%Oracle_x64%\managed\common\Oracle.ManagedDataAccess.dll /set:settings\TNS_ADMIN:%TNS_ADMIN%
"%OraProvCfg_x86%" /action:config /product:odpm /frameworkversion:v4.0.30319 /providerpath:%Oracle_x86%\managed\common\Oracle.ManagedDataAccess.dll /set:settings\TNS_ADMIN:%TNS_ADMIN%

rem Or without TNS_ADMIN configuration
rem "%OraProvCfg_x64%" /action:config /product:odpm /frameworkversion:v4.0.30319 /providerpath:%Oracle_x64%\managed\common\Oracle.ManagedDataAccess.dll
rem "%OraProvCfg_x86%" /action:config /product:odpm /frameworkversion:v4.0.30319 /providerpath:%Oracle_x86%\managed\common\Oracle.ManagedDataAccess.dll