Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Paulo,
Difícil essa...
... mas tenho uma pergunta.
Você copiou o arquivo gerado "bytebank_GeradorChavePix.dll" para dentro do diretório (pasta) do outro projeto em:
C:\ ... \bytebank_ATENDIMENTO\bin\Debug\net6.0
ou "\net7.0" conforme o que você está usando...
Se chamar direto da outra pasta pode ser que apareça um conflito.
De qualquer forma segue meu código da DLL, eu alterei um pouco do original:
namespace bytebank_GeradorChavePix;
/// <summary>
/// Classe que gera chaves PIX usando o formto GUID.
///
/// Marcas XML recomendadas para comentários de documentação
/// https://learn.microsoft.com/pt-br/dotnet/csharp/language-reference/xmldoc/recommended-tags
///
/// ATENÇÃO!
/// - NÃO ESQUEÇA DE CHECAR EM "PROPRIEDADES" / "CRIAR" / "SAÍDA" A OPÇÃO:
/// "ARQUIVO DE DOCUMENTAÇÃO" "GERAR UM ARQUIVO CONTENDO A DOCUMENTAÇÃO DA API."
/// </summary>
public static class GeradorPix
{
/// <summary>
/// Método que retorna uma chave aleatória de PIX.
/// </summary>
/// <returns>Retorna uma chave PIX no formato String.</returns>
public static string GetChavePix()
{
return Guid.NewGuid().ToString();
}
/// <summary>
/// Método que retorna uma lista de chaves aleatórias de PIX.
/// </summary>
/// <param name="numeroChaves">Quantidade de chaves a serem geradas.</param>
/// <returns>Retorna uma chave PIX no formato String.</returns>
public static List<string>? GetChavesPix(int numeroChaves)
{
if (numeroChaves <= 0)
{
return null;
}
else
{
List<string> chaves = new();
for (int i = 0; i < numeroChaves; i++)
{
chaves.Add(Guid.NewGuid().ToString());
}
return chaves;
}
}
}[]'s,
Fabio I.
Olá, Paulo! Bom dia,
Contribuindo aqui com o tópico:
Pela imagem que você compartilhou, ao tentar adicionar um DDL ocorre um erro. Esse tipo de problema pode ter diversas causas, mas uma das mais comuns é a falta de referência da biblioteca que contém o DDL em questão.
Uma solução para esse problema é verificar se a biblioteca que contém o DDL está referenciada corretamente no projeto em que você está trabalhando. Para fazer isso, basta clicar com o botão direito no projeto e selecionar a opção "Adicionar referência". Em seguida, procure pela biblioteca em questão e selecione-a.
Espero ter ajudado e bons estudos!
Olá Andre tudo bem ? o meu erro é muito parecido porem a frase é diferente : *O objeto de intenacia se criou como inalteravel *
como poderia resolver ? muito obrigado
Robson, bom dia! tudo blz?
O erro ocorre no momento de adicionar a dll também? ( não ficou claro para mim). Porém verifique o seguinte, que o erro "objeto de instância se criou como inalterável" em um projeto C# pode acontecer quando você tenta modificar um objeto que foi criado como "somente leitura".
Normalmente um objeto do tipo somente somente leitura é aquele que não pode ser alterado depois de criado. Isso pode ocorrer quando você declara um objeto como "readonly" em C# ou quando utiliza tipos de dados imutáveis.
Espero ter ajudado e bons estudos!