ASP.NET MVC 4.0 프로젝트와 내 관리자, 공급자 및 DataAccess 프로젝트와 같은 여러 클래스 라이브러리가있는 VS2012 솔루션에서 작업하고 있습니다. 내 dbContext 클래스는 DataAccess 프로젝트 내에 정의되어 있습니다.dbContext에 대한 내 DataAccess 라이브러리 프로젝트의 app.config에서 연결 문자열 읽기
내 목표는 DataAccess 프로젝트의 App.Config 파일에서 연결 문자열 정보를 제한하는 것입니다. DB와 상호 작용할 DataAccess 클래스이므로 connectionString을 프로젝트의 다른 곳에서는 지정하지 않는 것이 좋습니다.
내 연결 문자열을 하드 코딩하여 내 dbContext 클래스를 지정하면 프로젝트가 올바르게 작동하고 DB에서 데이터를 읽을 수 있습니다.
public MyDbContext()
: base(@"Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****")
{
}
하지만이 같은 app.config 파일에서 연결 문자열을 지정하는 경우 :
<connectionStrings>
<add name="MyDBConnection" connectionString="Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****;Connect Timeout=200; pooling='true" providerName="System.Data.SqlClient" />
</connectionStrings>
을 내 dbContext 클래스의 사용에서 사용할 다음과 같이 :
public MyDbContext()
: base("MyDBConnection")
{
}
그것은 작동하지 않습니다. 나는 또한 내 MVC 프로젝트의 web.config 파일에 동일한 연결 문자열을 사용했지만, 다시 나는 (첨부 이미지) 같은 오류가 점점 오전 :
이 사람이 ...
날 안내 주실 래요감사 하리
안녕하세요, 루이, thnx 내 문제를 회신하고보고 있습니다. 그 작은 따옴표 (')가 문제였습니다. 일단 제거하면 연결 문자열이 web.config 파일에서 예상대로 작동하기 시작합니다. – Hari
그러나 동일한 conn을 사용하는 경우. 문자열을 내 app.config 파일에서 다음과 같은 오류가 발생합니다 : "SQL Server에 연결하는 동안 네트워크 관련 또는 인스턴스 관련 오류가 발생했습니다.서버를 찾을 수 없거나 액세스 할 수 없습니다. 인스턴스 이름이 올 바르고 SQL Server가 원격 연결을 허용하도록 구성되어 있는지 확인하십시오. (공급자 : SQL 네트워크 인터페이스, 오류 : 50 - 로컬 데이터베이스 런타임 오류가 발생했습니다. 지정한 LocalDB 인스턴스가 없습니다. " – Hari
지금 내 web.config 파일에 연결 문자열 필드가 없으므로, 내 응용 프로그램이 appHost.config 또는 다른 것으로부터 읽으려는 것일 수 있습니까? loaclDB 참조에서 SQLServerExpress를 사용하려고합니다. – Hari