2009-10-01 3 views
0

.NET 3.5로 웹 응용 프로그램을 작성합니다. 내 웹 양식에서 여러 클래스 라이브러리 프로젝트를 참조하고 있습니다.개발 디렉토리를 참조하는 제작 응용 프로그램

웹 설치 관리자를 사용하여 배포하고 있습니다.

응용 프로그램을 설치하고 시작 페이지를 누르면 클래스 라이브러리에있는 객체 중 일부 (전부는 아님)에 널 포인터 예외가 발생합니다. 스택 추적을 보면 어딘가에서 내 개발 컴퓨터에만 존재하는 디렉토리를 찾고 있음을 알 수 있습니다.

IISRESET을 수행하면 오류가 사라집니다.

누군가 내 응용 프로그램 (web.config가 debug = "false"로 컴파일 됨)이 내 로컬 dev 컴퓨터에서 사물을 찾으려고하는 이유를 알고 있습니까?

내 활성 빌드가 릴리스로 설정되었습니다.

감사합니다.

답변

0

사이트에서 사용한 .dll은 모두 코드와 함께 게시 되었습니까? 그들이 설치자에 의해 배치되어 있는지 확인하지 않으면, 웹 구성은 참조를 찾기 위해 하드 코딩되지 않습니다.

+0

예, 클래스 라이브러리의 dll이 bin에 있습니다. 응용 프로그램은 응용 프로그램에서 절대 하드 코드되지 않은 매우 중요한 파일을 찾으려고합니다. – user112799

0

Visual Studio를 열고 참조 폴더를보고 해당 참조가 DEV 컴퓨터의 파일을 가리키고 있는지 확인하십시오. 그렇다면 응용 프로그램 (예 : 어셈블리)에 새 폴더를 추가하고 해당 폴더에서 응용 프로그램이 참조하는 모든 dll을 추가하는 것이 좋습니다.

그런 다음 프로젝트의 모든 참조가 DEV 컴퓨터에만있는 폴더가 아니라 어셈블리 폴더의 dll을 가리키고 있는지 확인하십시오.