Introduction
Cette rubrique décrit comment installer et configurer la trousse SDK pour .NET.
Cette rubrique décrit comment installer et configurer la trousse SDK pour .NET.
Pour utiliser un service Oracle Cloud Infrastructure spécifique dans votre projet, vous pouvez utiliser la commande dotnet add package à partir du répertoire racine de votre espace de travail de projet qui contient le fichier de projet. La syntaxe de la commande add package est la suivante :
dotnet add package <PACKAGE_ID> -v <DESIRED_VERSION>
Si vous ne spécifiez pas de numéro de version, la commande add package
installera la dernière version.
Cet exemple installe la dernière version de l'ensemble Service de base :
dotnet add package OCI.DotNetSDK.Core
Cet exemple installe la version 1.0.0 de l'ensemble Service d'identité :
dotnet add package OCI.DotNetSDK.Identity -v 1.0.0
Pour éviter les conflits de dépendance, vous devez utiliser les mêmes versions de tous les OCI. Ensembles Nuget de trousse SDK .NET dans une application.
Téléchargement de la trousse SDK à partir de GitHub
Vous pouvez télécharger la trousse SDK pour .NET en tant qu'archive zip à partir de GitHub. Le téléchargement contient la trousse SDK, toutes ses dépendances, la documentation, ainsi que des exemples.
Installation de la trousse SDK avec Yum
- Pour installer la trousse SDK OCI pour .NET avec yum :
-
Pour Oracle Linux 7 :
sudo yum-config-manager --enable ol7_developer sudo yum install oci-dotnet-sdk
Pour Oracle Linux 8 :
sudo yum-config-manager --enable ol8_developer sudo yum install oci-dotnet-sdk
Les ensembles de services de la trousse SDK OCI Dotnet et ses dépendances se trouvent dans
/usr/lib/dotnet/NuPkgs/
.
-
- Pour que l'interface de ligne de commande dotnet puisse trouver les ensembles installés, vous devez effectuer l'une des opérations suivantes :
- Créez un fichier nommé
nuget.config
dans la racine de votre projet d'application .NET et ajoutez le contenu suivant :
...ou...<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <!--To inherit the global NuGet package sources remove the <clear/> line below --> <clear /> <add key="local" value="/usr/lib/dotnet/NuPkgs" /> </packageSources> </configuration>
- Utilisez l'option
--source
avec les commandes de l'interface de ligne de commande dotnet, en transmettant le répertoire/usr/lib/dotnet/NuPkgs/
. Par exemple :dotnet build --source /usr/lib/dotnet/NuPkgs/ dotnet restore --source /usr/lib/dotnet/NuPkgs/ dotnet add package OCI.DotNetSDK.Common --source /usr/lib/dotnet/NuPkgs/
- Créez un fichier nommé
- Pour obtenir des informations sur l'ensemble installé, exécutez la commande suivante :
rpm -qi oci-dotnet-sdk
- Ajoutez les ensembles des services OCI à votre projet à l'aide de la ligne de commande dotnet :
dotnet add package OCI.DotNetSDK.Common dotnet add package OCI.DotNetSDK.Audit --version 4.3.0 dotnet add package OCI.DotNetSDK.Audit --version 4.3.0 --source /usr/lib/dotnet/NuPkgs/
- Vous pouvez maintenant importer des espaces de noms dans votre projet. Par exemple :
using Oci.AuditService; using Oci.AuditService.Models; using Oci.Common; using Oci.Common.Auth;
Utilisation de la trousse SDK pour .NET avec Nuget
Configuration de la trousse SDK
Les services de trousse SDK ont besoin de deux types de configuration : données d'identification et paramètres HTTP côté client.
Configuration des données d'identification
Tout d'abord, vous devez configurer vos données d'identification et votre fichier de configuration. Pour les instructions, voir Fichier de configuration des trousses SDK et de l'interface de ligne de commande.
Vous devez ensuite configurer le client pour utiliser les données d'identification. Les données d'identification sont résumées au moyen d'une interface IAuthenticationDetailsProvider
que le client doit mettre en oeuvre.
Ces exemples présentent les mises en oeuvre de ConfigFileAuthenticationDetailsProvider
et SimpleAuthenticationDetailsProvider
.
Si vous utilisez des clés de fichier de configuration standard et l'emplacement du fichier de configuration standard, vous pouvez utiliser ConfigFileAuthenticationDetailsProvider
:
using Oci.Common.Auth;
// uses DEFAULT profile in default file location: i.e ~/.oci/config
var provider = new ConfigFileAuthenticationDetailsProvider("DEFAULT");
// uses custom configuration
var provider = new ConfigFileAuthenticationDetailsProvider("custom_file_location", "CUSTOM_PROFILE");
Si vous utilisez des noms de clés personnalisés dans le fichier de configuration, vous pouvez utiliser SimpleAuthenticationDetailsProvider
Pour charger une configuration avec ou sans profil :
using Oci.Common;
var config = ConfigFileReader.Parse(ConfigFileReader.DEFAULT_FILE_PATH);
var configWithProfile = ConfigFileReader.Parse(ConfigFileReader.DEFAULT_FILE_PATH, "DEFAULT");
Ensuite, créez un fournisseur Auth
en utilisant SimpleAuthenticationDetailsProvider
:
using Oci.Common;
using Oci.Common.Auth;
var config = ConfigFileReader.Parse(ConfigFileReader.DEFAULT_FILE_PATH);
// The private key supplier can be created with the file path,or using the config file
var provider = new SimpleAuthenticationDetailsProvider {
TenantId = config.GetValue("tenancy"),
UserId = config.GetValue("user"),
Fingerprint = config.GetValue("fingerprint"),
Region = Region.FromRegionId(config.GetValue("region")),
PrivateKeySupplier = new FilePrivateKeySupplier(config.GetValue("key_file"), config.GetValue("pass_phrase"))
};
Configuration des options côté client
Créez une configuration côté client au moyen de la classe ClientConfiguration
. Si vous ne fournissez pas votre propre configuration, la trousse SDK pour .NET utilise une configuration par défaut.
L'exemple suivant montre comment fournir votre propre configuration :
var clientConfiguration = new ClientConfiguration
{
ClientUserAgent = "DotNet-SDK-Example",
RetryConfiguration = new RetryConfiguration
{
// maximum number of attempts to retry the same request
MaxAttempts = 5,
// retries the request if the response status code is in the range [400-499] or [500-599]
RetryableStatusCodeFamilies = new List<int> { 4, 5 }
}
};
Configuration des options personnalisées
Dans le fichier de configuration, vous pouvez insérer des paires clé-valeur personnalisées que vous définissez, puis les référencer si nécessaire. Par exemple, vous pouvez spécifier un ID compartiment fréquemment utilisé dans le fichier de configuration :
[DEFAULT]
user=ocid1.user.oc1..<your_unique_id>
fingerprint=<your_fingerprint>
key_file=~/.oci/oci_api_key.pem
tenancy=ocid1.tenancy.oc1..<your_unique_id>
customCompartmentId=ocid1.compartment.oc1..<your_unique_id>
Vous pouvez ensuite extraire la valeur :
using Oci.Common;
var config = ConfigFileReader.parse(ConfigFileReader.DEFAULT_FILE_PATH);
String compartmentId = config.GetValue("customCompartmentId");
Activation de la journalisation
La trousse OCI SDK pour .NET utilise l'ensemble NLog
pour la journalisation. NLog
est installé automatiquement avec la trousse SDK pour .NET, donc aucune installation supplémentaire n'est requise.
- Ajoutez un fichier
NLog.config
au répertoire racine du projet. Vous pouvez trouver un exemple de fichier NLog.config ici - Ajoutez une section
ItemGroup
dans le fichier du projet. Par exemple :<ItemGroup> <Content Include="PATH TO NLog.config File" > <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> </ItemGroup>
- Pour procéder à la journalisation à partir d'une application, créez un enregistreur automatique (
logger
) et utilisez la méthodeInfo()
. Par exemple :var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Hello World");
Seule la journalisation de la trousse SDK sera saisie si vous ne créez pas d'enregistreur automatique à partir d'une application.