Skip to content →

ASP.NET MVC3 com Assemblies Privados

Esta semana eu precisei colocar um site novo no ar, no espaço de hospedagem da ImaginarTI. Curiosamente foi o primeiro site em ASP.NET MVC3 que vai para a nossa hospedagem – os demais ficaram hospedados diretamente nos clientes. O nosso provedor de hospedagem afirma que suporta MVC3, então achei que seria 100% transparente. Não foi bem assim…

O fato é que após subir os arquivos, começaram a aparecer um monte de problemas. Modificamos o web.config para exibir os erros (só para debug do deloy mesmo) e vimos que eram assemblies faltando. Como assim faltando?

Entrei em contato com o suporte da hospedagem e eles disseram que suportam o MVC 3, mas que eu tenho que colocar as DLL’s no BIN. Ora, isso não é exatamente “suportar” MVC3, né? Me senti enganado (menos um ponto para esses caras), mas resolvi não brigar dessas vez. Bola para frente.

Como resolver?
Bem, o projeto (no VS2010) tinha sido criado com o template de projeto do próprio MVC, então todas as referências já estavam setadas corretamente. Bastou eu alterar algumas referências, mudando o COPY LOCAL para true, e acrescentar outras referências (também com COPY LOCAL true) e tudo voltou a funcionar.

Não cheguei nem a procurar na internet, mas me lembro que o Scott Gu já tinha falado sobre isso. De qualquer forma, o que resolveu o meu caso foi:

Mudar o COPY LOCAL para True

  • System.Web.Helpers
  • System.Web.Mvc
  • System.Web.WebPages



Novas referências

  • Microsoft.Web.Infrastructure
  • System.Web.WebPages.Razor
  • System.Web.WebPages.Deployment
  • System.Web.Razor
Tomara que ajude mais alguém por aí.
Até a próxima!

E confira os outros artigos sobre tecnologia!

Published in Programação Tecnologia

newest oldest most voted
Notify of
Anônimo
Visitante
Anônimo

Post muito útil.
Estou com um problema parecido na Redehost.

Exception Details: System.BadImageFormatException: Could not load file or assembly 'NHibernate, Version=3.2.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' or one of its dependencies. The module was expected to contain an assembly manifest.