2015년 8월 20일 목요일

'Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 또는 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다... 라고 오류가 날때.

로컬에서 개발한 웹사이트를 서버에 업로드 했더니...
'Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 또는 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다... 라고 오류가 난다.


아... 미치고 환장할 노릇이다. 개발 컴퓨터에선 아무런 문제가 없는데, 서버에선 안된다.
게다가, Microsoft.Web.Infrastructure 라는건 참조에 들어 있지도 않은데, 왜 찾는건지?

답답함이야 이루 말할 수가 없지만, 어쨋든 해결은 해야 하니 인터넷을 검색...

패키지 관리자에서 업데이트 하면 된다지만, 이건 개발 PC 에다 설치하는거고, 서버는 어쩜?

... 하아... 결론만 말하면, 저건 MVC 관련 모듈로 추정되는데, VisualStudio 2010 이상에서 작업하다 보면 Microsoft.Web.Infrastructure 가 참조로 없어도 사용되는 경우가 있는거 같음.

해결책은 ... 개발 PC 에서 문제가 생긴것이라면 패키지관리 에서 설치 or 업데이트 하면 되고, 서버에서 문제라면 Microsoft.Web.Infrastructure 가 기본적으로 배포기능으로 배포에 포함 안된다고 하니 (옵션으로 지정 할 수 있는듯 하나, 어디서 지정하는지 못찾겠음) "Microsoft.Web.Infrastructure.dll" 파일을 찾거나 다운 받아서, 서버의 "bin" 폴더에 넣어 주면 됨.


아... 정말 ... 똑같은 소스에 개발툴 버젼만 바뀌었을 뿐인데, 왜 이러냐...