简体   繁体   中英

Oracle Developer Tools for Visual Studio 2019 can not be installed properly

In VS 2019, ODT install with an extension, not as a setup file like previous version. So, from VS 2017 upgraded EF 6 used MVC project edmx file doesn't show database diagram after extension installation, blank black page, "edit xml" option etc. that's all.

And an error in Error List if you realize!

The ADO.NET provider with invariant name 'Oracle.ManagedDataAccess.Client' is either not registered in the machine or application config file, or could not be loaded. See the inner exception for details

I checked all config files in solution app.config, web.config, etc. everything looks good, all tags and values about "Oracle.ManagedDataAccess.Client" already defined and correct!

After some weeks, I decided to use back VS 2017 only for this project, installed VS 2017 again and ODT for VS 2017 by setup file. Then I found a web site about this problem.

It says;

  • Close all VS instances
  • Find VS devenev.exe.config file
  • Open it with text editor
  • Copy all 'Oracle' contains settings from working side to not working side

That's it!

What I copied into VS 2019 devenev.exe.config file from VS 2017's config;

(changed dll's paths according extension file)

in < assemblyBinding > tag

  <dependentAssembly>
    <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
    <codeBase version="4.122.19.1" href="C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions\m3m25bey.i3v\Assemblies\DataProviders\Oracle.ManagedDataAccess.dll" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Oracle.ManagedDataAccess.EntityFramework" publicKeyToken="89b483f429c47342" culture="neutral" />
    <codeBase version="6.122.19.1" href="C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions\m3m25bey.i3v\Assemblies\DataProviders\Oracle.ManagedDataAccess.EntityFramework.dll" />
  </dependentAssembly>    

and also

in < DbProviderFactories > tag

  <remove invariant="Oracle.ManagedDataAccess.Client" />
  <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" /> 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM