ArgumentException ObjectContext에서 상속되는 개체 인스턴스를 작성할 때
-
10-07-2019 - |
문제
나는 느슨하게 따라 가고있다 Kazi Manzur Rashid의 훌륭한 블로그 게시물 시리즈 새로운 (적어도 나에게) 디자인 패턴을 구현하는 방법을 배우는 학습 운동으로서 처음부터 어려움을 겪고 있습니다.
나는 기본적으로 그의 코드를 복사했다 Database
, RepositoryBase
그리고 RepositoryBaseTests
수업이지만 테스트를 실행하려고하면 오류 메시지가 표시됩니다.
클래스 예약 인스턴스를 생성 할 수 없음. 오류 : System.Reflection.targetInvocationException : 호출 대상에 의해 예외가 발생했습니다. ---> System.ArgumentException : 초기화 문자열의 형식은 인덱스 0에서 시작하는 사양을 준수하지 않습니다.
디버거를 통해 나는 예외가 생성자에 던져진 것을 확인했다. Database
다음과 같이 보이는 클래스 :
public Database(
IConfigurationManager configurationManager,
string connectionstringName)
: base(
GetConnectionString(configurationManager, connectionstringName),
"BookingEntities")
{ // Nothing happens here }
호출 할 때 오류가 발생합니다 base
생성자, 그리고 현재 보내는 값을 하드 코딩하면 다음과 같습니다.
: base("Dummy connStr", "BookingEntities")
왜 이것이 효과가 없습니까?
해결책
"Dummy Connstr"는 유효한 EF 연결 문자열이 아닙니다.
유효한 EF 연결 문자열은 다음과 같습니다.
connectionString="metadata=res://*/Data.Model.csdl|res://*/Data.Model.ssdl|res://*/Data.Model.msl;provider=System.Data.SqlClient;provider connection string="Data Source=SERVERNAME\SQLDEV2008;Initial Catalog=DBName;Integrated Security=True;MultipleActiveResultSets=True""
제휴하지 않습니다 StackOverflow