Eu tenho um problema um pouco estranho.
Desenvolvi um aplicativo com MVC 4 e a nova API Web e funciona bem localmente. Instalei MVC4 no servidor e implantei o aplicativo. Agora recebo o seguinte erro:
Não foi possível carregar o arquivo ou assembly 'System.Net.Http, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' ou uma de suas dependências. A definição de manifesto do assembly localizado não corresponde à referência do assembly. (Exceção de HRESULT: 0x80131040)
Descrição: Ocorreu uma exceção não tratada durante a execução da solicitação da web atual. Reveja o rastreamento da pilha para obter mais informações sobre o erro e onde ele se originou
Engraçado, a versão de System.Net.Http que tenho localmente em minha pasta de pacotes ou na pasta ASP.NET MVC 4 \ Assemblies é 1.0.0.0. Na verdade, removi a referência a System.Net.Http do meu projeto, mas ainda recebo a mesma mensagem. Estou um pouco confuso sobre de onde vem a referência 2.0.0.0 e por que funcionaria localmente, mas não no servidor.
Olhando para as dependências do nuget:
As bibliotecas básicas da API ASP.NET WEb (Beta) dependem de System.Net.Http.Formatting.
E System.Net.Http.Formatting depende de System.Net.Http.
Acho que é daí que vem isso. Mas eu tenho a versão 2.0.20126.16343 deste pacote instalada, só que a dll dentro tem a versão 1.0.0.0
Estou esquecendo de algo?
ATUALIZAR:
Este é um subaplicativo de outro aplicativo ASP.NET, mas o outro ainda é baseado em WebForms. Então, algo está ficando confuso. Mas se eu fizer uma limpeza na seção de montagem do web.config, ele nem encontrará mais o aplicativo.