Select the product you need help with
Mensagem de erro quando você executar uma rotina CLR ou usa um assembly no SQL Server: "Assembly no armazenamento host tem uma assinatura diferente do assembly no GAC. (Exceção de HRESULT: 0x80131050) "Artigo: 949080 - Ver produtos para os quais este artigo se aplica. Nesta páginaSintomasConsidere os cenários a seguir. Cenário 1Criar uma rotina de runtime (CLR) de linguagem comum que faz referência um assembly do Microsoft.NET Framework. O assembly do.NET Framework não está documentado no Artigo da Base de dados de Conhecimento 922672. Em seguida, Instale o.NET Framework 3.5 ou um hotfix com base no.NET Framework 2.0.Cenário 2Criar um assembly e, em seguida, registrar o assembly em um banco de dados Microsoft SQL Server. Em seguida, você instale uma versão diferente do assembly no Global Assembly Cache (GAC).Quando você executar a rotina CLR ou usa o assembly de qualquer um desses cenários no SQL Server, você recebe uma mensagem de erro semelhante à seguinte: Servidor: Msg 6522, nível 16, estado 2, linha 1 Um.NET Framework Erro durante a execução da rotina definida pelo usuário ou função agregada 'getsid': System.IO.FileLoadException: Não foi possível carregar arquivo ou assembly ' System. DirectoryServices, versão = 2.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a' ou uma de suas dependências. Conjunto de módulos no host armazenamento tem uma assinatura diferente do assembly no GAC. (Exceção de HRESULT: 0x80131050) System.IO.FileLoadException: CausaQuando o CLR carrega um assembly, o CLR verifica que é o mesmo assembly no GAC. Se o mesmo assembly está no GAC, o CLR verifica
que
as identificações de versão do módulo (MVIDs) desses assemblies correspondem. Se o MVIDs desses
módulos (assemblies) não coincidem, você receberá o erro de mensagem que o
Menciona a seção "Sintomas". Quando um assembly é recompilado, MVID das alterações de assembly. Portanto, se você atualizar o.NET Framework, os assemblies do.NET Framework ter diferentes MVIDs porque esses módulos são recompilados. Além disso, IF atualizar seu próprio assembly, o assembly é recompilado. Portanto, o conjunto também possui um diferente MVID. Como contornarSolução alternativa 1Para contornar o cenário 1 na seção "Sintomas", você deve atualizar manualmente os assemblies do.NET Framework no SQL Server. Para fazer isso, use a instrução ALTER ASSEMBLY para ponto para o novo versão do assembly do.NET Framework a seguinte pasta:%Windir%\Microsoft.NET\Framework\Versão ObservaçãoVersão representa o
versão do.NET Framework que você
instalado ou atualizado.Solução alternativa 2Para contornar o cenário 2 pol "Sintomas" seção, use a instrução ALTER ASSEMBLY para atualizar o assembly em o banco de dados.Se o problema ainda existir Após fazer isso, descarte o assembly do banco de dados e, em seguida registrar o nova versão do o assembly no banco de dados. Ponto Da SituaçãoMicrosoft
confirmou que este é um problema nos produtos Microsoft que estão listados
na seção "Aplica-se a". Mais InformaçãoNão recomendamos que você use os assemblies do.NET Framework que não estão documentados no artigo da Base de dados de Conhecimento 922672. Artigo da Base de dados de Conhecimento 922672 lista os assemblies que são testados no ambiente hospedado pelo CLR do SQL Server. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft: 922672
(http://support.microsoft.com/kb/922672/
)
Política de suporte para assemblies do.NET Framework não testados no ambiente hospedado no SQL Server CLR Descrição de rotinas CLRRotinas de CLR incluir os seguintes objetos são implementados por meio de Integração do SQL Server com o CLR do.NET Framework:
Módulos (assemblies) para atualizar depois de instalar o.NET Framework 3.5Depois de instalar o.NET Framework 3.5, você deve usar o ALTER ASSEMBLY instrução para atualizar os seguintes assemblies:
%Windir%\Microsoft.NET\Framework\v2.0.50727 Como preservar os dados de tipos de dados definidos pelo usuário depois de soltar um assemblySe você soltar um assembly que usa um tipo de dados definidos pelo usuário do SQL Server, você pode usar um dos seguintes métodos para preservar os dados.Suponha que este é o cenário:
Método 1: Usar o utilitário bcp.exe.
Método 2: Use INSERT... Instrução SELECTSuponha que o tipo de dados MyDateTime ocupa 9 bytes no armazenamento.
ReferênciasPara obter mais informações sobre a versão do assembly, visite o
seguinte site da Web Microsoft Developer Network (MSDN): http://msdn2.microsoft.com/en-us/library/51ket42z (vs. 80). aspx Para
obter mais informações sobre como atualizar um assembly, visite o seguinte da MSDN
site:
(http://msdn2.microsoft.com/en-us/library/51ket42z(VS.80).aspx)
http://msdn2.microsoft.com/en-us/library/ms186711.aspx Para
mais informações sobre como descartar um assembly, visite o seguinte da MSDN
site:
(http://msdn2.microsoft.com/en-us/library/ms186711.aspx)
http://msdn2.microsoft.com/en-us/library/ms177514.aspx Para
obter mais informações sobre como registrar um assembly em um banco de dados do SQL Server 2005
visite o seguinte site da MSDN:
(http://msdn2.microsoft.com/en-us/library/ms177514.aspx)
http://msdn2.microsoft.com/en-us/library/ms189524.aspx Para
obter mais informações sobre o utilitário Bcp.exe exe, visite o seguinte site da MSDN:
(http://msdn2.microsoft.com/en-us/library/ms189524.aspx)
http://msdn2.microsoft.com/en-us/library/ms162802.aspx
(http://msdn2.microsoft.com/en-us/library/ms162802.aspx)
PropriedadesArtigo: 949080 - Última revisão: segunda-feira, 7 de Janeiro de 2013 - Revisão: 1.0 A informação contida neste artigo aplica-se a:
Tradução automática IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 949080
(http://support.microsoft.com/kb/949080/en-us/
)
| Traduções de Artigos
|




Voltar ao topo








