Conceitos Básicos
Este tópico descreve como instalar e configurar o SDK para .NET.
Este tópico descreve como instalar e configurar o SDK para .NET.
Para usar um serviço do Oracle Cloud Infrastructure específico em seu projeto, você pode usar o comando dotnet add package do diretório raiz do seu espaço de trabalho do projeto que contém o arquivo do projeto. A sintaxe do comando add package é:
dotnet add package <PACKAGE_ID> -v <DESIRED_VERSION>
Se você não especificar um número de versão, o comando add package
instalará a versão mais recente.
Este exemplo instala a versão mais recente do pacote Core Service:
dotnet add package OCI.DotNetSDK.Core
Este exemplo instala a versão 1.0.0 do pacote do Identity Service:
dotnet add package OCI.DotNetSDK.Identity -v 1.0.0
Para evitar conflitos de dependência, use as mesmas versões de todos os pacotes .NET SDK Nuget do OCI em um aplicativo.
Download do SDK no GitHub
No GitHub , você pode fazer o download do SDK para .NET como um arquivo zip. O GitHub contém o SDK, todas as suas dependências, documentação e exemplos.
Instalando o SDK com o Yum
- Para instalar o OCI SDK para .NET usando o yum:
-
Para Oracle Linux 7:
sudo yum-config-manager --enable ol7_developer sudo yum install oci-dotnet-sdk
-
Para Oracle Linux 8:
sudo yum-config-manager --enable ol8_developer sudo yum install oci-dotnet-sdk
Os pacotes de serviços do OCI Dotnet SDK e suas dependências estão localizados em
/usr/lib/dotnet/NuPkgs/
.
-
- Assim, para que a CLI do dotnet encontre os pacotes instalados, execute um dos seguintes procedimentos:
- Crie um arquivo chamado
nuget.config
na raiz do seu projeto de aplicativo .NET e adicione o seguinte conteúdo:
...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>
- Use a opção
--source
com os comandos da CLI do dotnet, informando o diretório/usr/lib/dotnet/NuPkgs/
. Por exemplo: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/
- Crie um arquivo chamado
- Para obter informações sobre o pacote instalado, execute o seguinte comando:
rpm -qi oci-dotnet-sdk
- Adicione os pacotes do OCI Service ao seu projeto usando a linha de comando do 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/
- Agora você pode importar os namespaces para seu projeto. Por exemplo:
using Oci.AuditService; using Oci.AuditService.Models; using Oci.Common; using Oci.Common.Auth;
Usando o SDK para .NET com o Nuget
Nuget .
Configurando o SDK
Os serviços SDK precisam de dois tipos de configuração: credenciais e definições HTTP do cliente.
Configurando Credenciais
Primeiro, você precisa configurar as suas credenciais e o arquivo de configuração. Para obter instruções, consulte Arquivo de Configuração da CLI e do SDK.
Em seguida, configure o cliente para usar as credenciais. As credenciais são extraídas por meio de uma interface IAuthenticationDetailsProvider
que o cliente precisa implementar.
Estes exemplos mostram implementações de ConfigFileAuthenticationDetailsProvider
e SimpleAuthenticationDetailsProvider
.
Se você usar chaves de arquivo de configuração padrão e o local do arquivo de configuração padrão, será possível usar 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");
Se você estiver usando nomes de chave personalizados no arquivo de configuração, poderá usar SimpleAuthenticationDetailsProvider
Para carregar uma configuração com ou sem um perfil:
using Oci.Common;
var config = ConfigFileReader.Parse(ConfigFileReader.DEFAULT_FILE_PATH);
var configWithProfile = ConfigFileReader.Parse(ConfigFileReader.DEFAULT_FILE_PATH, "DEFAULT");
Em seguida, crie um provedor Auth
usando 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"))
};
Configurando Opções do Cliente
Crie uma configuração do cliente por meio da classe ClientConfiguration
. Se você não fornecer a sua própria configuração, o SDK para .NET usará uma configuração padrão.
O exemplo a seguir mostra como fornecer sua própria configuração:
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 }
}
};
Configurando Opções Personalizadas
No arquivo de configuração, você poderá inserir pares de chave/valor personalizados e referenciá-los conforme necessário. Por exemplo, você pode especificar um ID de compartimento frequentemente usado no arquivo de configuração:
[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>
Depois, você poderá recuperar o valor:
using Oci.Common;
var config = ConfigFileReader.parse(ConfigFileReader.DEFAULT_FILE_PATH);
String compartmentId = config.GetValue("customCompartmentId");
Ativando o Registro em Log
O OCI SDK para .NET usa o pacote NLog
para registro em log. NLog
é instalado automaticamente com o .NET SDK; portanto, nenhuma instalação adicional é necessária.
- Adicione um arquivo
NLog.config
no diretório raiz do projeto. Você pode encontrar um exemplo de arquivo NLog.config aqui - Adicione uma seção
ItemGroup
no arquivo do projeto. Por exemplo:<ItemGroup> <Content Include="PATH TO NLog.config File" > <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> </ItemGroup>
- Para registrar em log de um aplicativo, crie um
Logger
e use o métodoInfo()
. Por exemplo:var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Hello World");
Somente o registro em log do SDK será capturado se você não criar um logger de um aplicativo.