Tout d'abord, j'ai lu d'autres articles sur la connexion à une base de données Oracle. Malheureusement, ils ne pouvaient pas m'aider. Je vais décrire ce que j'ai essayé et j'espère que quelqu'un pourra me diriger dans la bonne direction.
Tout d'abord, j'ai essayé d'installer ODTwithODAC122010 comme le disent beaucoup de sources, mais celui-ci me donne quelques processus sortis avec un code de sortie non nul. Il dit que c'est réussi mais rien ne semble avoir changé.
A côté de cela, j'ai essayé d'installer ODTforVS2017_122010.exe. J'ai un professionnel Visual Studio mis à jour. Il dit que l'installation est un succès. Cela ne semble cependant ajouter aucune option comme le décrivent les tutoriels. Je veux dire par là qu’il devrait y avoir quelque chose de visible dans;
outils de visual studio -> connexion à la base de données -> base de données Oracle, le menu du fournisseur de données devrait avoir quelque chose comme Oracle pour .. Cela ne s'affiche malheureusement pas ..
J'ai donc essayé de me connecter à la base de données dans mon projet Visual Studio en sélectionnant le fournisseur de données-cadre .net pour Oracle. Ici, trois champs sont demandés: Nom du serveur nom d'utilisateur et mot de passe. J'ai essayé de les remplir mais la connexion a échoué. Pour le nom du serveur que j'ai utilisé: IPADDRESS: PORT/SERVICENAME
Après cela, j'ai abandonné tout espoir de se connecter à la base de données via Visual Studio (je peux me connecter à la base de données à l'aide du développeur Oracle SQL).
Ensuite, j'installe les packages de nuget suivants: - Oracle.ManagedDataAccess - System.Configuration.ConfigurationManager - System.Security.Permissions - System.Security.Principal
Et écrit un morceau de code pour se connecter à la base de données comme:
using(OracleConnection connect = new OracleConnection(ConnectionDetails.returnConnectionString()))
{
connect.Open();
Console.WriteLine("did it work?" + connect.ServerVersion);
}
Où returnConnectionString renvoie:
"User Id=MYID;Password=MYPASSWORD;Data Source=IPADDRESS:PORT/SERVICENAME"
Malheureusement, lorsque j'essaie de l'exécuter, je suis confronté à un fichier ExecutionContext.cs introuvable. Cela se passe à connect.open ();
Je lance ce code à l'adresse:
public static void Main(string[] args)
{
var a = new DatabaseConnector();
a.test();
BuildWebHost(args).Run();
}
En conclusion, je tiens à préciser que j’utilise ASP.NET Core et que vos suggestions et votre aide seront grandement appréciées!
Pour être précis,
Dans la page, importez comme ci-dessous pour accéder aux classes Oracle
using Oracle.ManagedDataAccess.Client;
Il s'agit d'une version bêta du fournisseur d'accès aux données Oracle et la version de PROD est censée être disponible à la fin du 3ème trimestre de 2018.
Il n'y a actuellement aucun support ODP.NET pour .NET Core, il était supposé être sorti l'année dernière, mais il n'y a pas eu plus de nouvelles que et ça vient Tweet du compte Twitter ODP il y a quelques semaines.
Vous pouvez faire fonctionner la version actuelle en déplaçant votre projet de .netcoreapp2 vers un framework cible net461 ou supérieur, mais cela supprimerait le support multiplateforme de votre projet.
Pour déplacer votre projet vers .net461 ou tout autre, procédez comme suit:
TargetFramework
par net461Microsoft.AspNetCore.All
et installez le Microsoft.AspNetCore
(qui devrait télécharger les autres dépendances).Au moment de poser cette question, il n'y avait aucun chauffeur Roy Sanchez a répondu à cela. Quelques semaines plus tard, le pilote a été publié sur le site Oracle et un package en tant que nuget.