Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Uma nomeação forte na assembly cria uma única identidade para assembly e pode evitar conflitos de assembly.
Como é criado um assembly de nomeação forte?
Um assembly de nome forte é gerado por meio da utilização de uma chave privada que corresponde a uma chave pública distribuída com o assembly e por ele mesmo. O assembly inclui o manifesto assembly que contém os nomes e os hashes de todos os arquivos que compõem o assembly. Assemblies que têm o mesmo nome forte devem ser idênticos.
Você pode atribuir nomes fortes a assemblies usando o Visual Studio ou uma ferramenta de linha de comando. Para saber mais, confira Como assinar um assembly com um nome forte ou Sn.exe (Ferramenta de Nome Forte).
Quando um assembly de nome forte é criado, ele contém o nome de texto simples do assembly, o número de versão, informação cultural opcional, uma assinatura digital e uma chave pública que corresponde a uma chave privada utilizada para assinar.
Aviso
Não confie em nomes fortes para segurança. Eles fornecem apenas uma identidade exclusiva.
Por que usar um nome forte em seus assemblies?
Para o .NET Framework, assemblies de nome forte são úteis nos seguintes cenários:
Você deseja habilitar seus assemblies a serem referenciados por assemblies de nome forte ou para dar acesso
friendaos seus assemblies de outros assemblies de nome forte.Um aplicativo precisa acessar versões diferentes do mesmo assembly. Isso significa que você precisa de versões diferentes de um assembly para carregar lado a lado no mesmo domínio do aplicativo sem conflitos. Por exemplo, se houver extensões diferentes de uma API em assemblies que tenham o mesmo nome simples, a nomenclatura forte fornecerá uma identidade exclusiva para cada versão do assembly.
Para não afetar negativamente o desempenho dos aplicativos que utilizam seu assembly, você deseja que o assembly seja neutro em domínios. Isso exige uma nomeação forte porque um assembly com neutro com relação ao domínio deve ser instalado no cache de assembly global.
Você quer centralizar o serviço para o aplicativo aplicando política de editor, o que significa que o assembly deve ser instalado no cache de assembly global.
Para .NET Core e .NET 5+, assemblies de nome forte não proporcionam benefícios materiais. O runtime nunca valida a assinatura de nome forte nem usa o nome forte para associação de assembly.
Se você for um desenvolvedor de código aberto e quiser os benefícios de identidade de um assembly com nome forte para melhor compatibilidade com o .NET Framework, considere compartilhar a chave privada associada a um assembly no seu sistema de controle de versão.