배경NHibernate에, WCF 및 SqlServerCE - 예외 발생로드 드라이버
내가 NHibernate에 사용하는 BLL의 DLL이있다. 클라이언트 응용 프로그램과 WCF 서비스 (클라이언트가 다른 컴퓨터에서 실행되는 경우에도)간에 동일한 BLL을 공유합니다.
클라이언트 응용 프로그램과 함께 BLL과 함께 SqlServerCe 또는 SqlServer 드라이버를 성공적으로 사용할 수 있지만 WCF 용 SqlServer 드라이버 만 사용할 수 있습니다.
SQL Server를 사용하도록 hibernate.cfg.xml을 변경하면 예외가 발생하지 않고 필요한대로 서비스를 사용할 수 있습니다.
오류
log4net 출력에서 정확한 오류는 다음과 같습니다
2421, 5, DEBUG, NHibernate.Connection.DriverConnectionProvider, (null),Obtaining IDbConnection from Driver
2483, 5, DEBUG, NHibernate.Connection.DriverConnectionProvider, (null),Exception thrown obtaining connection: Exception has been thrown by the target of an invocation.
나는 또한 파일 뒤에 내 WCF 코드에 다음 코드가 있습니다
AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true);
주의를
,210- WCF bin 디렉토리는 모든 System.Data.SqlServerCe.dll을가 System.Data.SqlServerCe.dll을가 추가 된 경우 문제가되지 않음 GAC
- 에있는 경우 문제가되지 않습니다 DLL의 NHibernate에와 SqlServerCe
- 에 대한 요구 포함 어셈블리
- 운영 체제에서 web.config 파일 내가 소형 전자와 아무 제거, 윈도우 서버 2003 R2 SP2
- .NET 프레임 워크 3.5SP1는
- 비주얼 스튜디오 2008은 그냥 넣다 을 설치 설치되어 dition하지만 여전히 문제
문제를 해결하지 못할
NHibernate에이 SqlServerCe 프레임 워크를로드 할 수없는 이유를 어떻게 시도하고 결정하는 것?
문제를 정확하게 파악하여 해결 방법을 찾을 수 있도록 포렌식 분석을 수행 할 수 있습니까? 1
업데이트 Incase의 내가 그냥 간단한 웹 사이트를 만들어 성공적으로 SDF 데이터베이스에 하드 코딩 된 경로를 사용하여 레코드를 삽입 및 검색 할 ORM을 사용할 수 있어요 내 코드이었다. webservice에 대해 동일한 최대 절전 모드 구성 파일을 사용하면 예외가 생성됩니다. 이렇게하면 WCF 구현 문제가 좁혀집니다.