SQL Express 연결 문자열에 대한 상대 경로 구성
단위 테스트 프로젝트에서 MDF 데이터베이스의 위치를 지정하는 문제에 직면합니다. 응용 프로그램 위치를 기준으로 파일을 저장합니다. app.config 파일에서 연결 문자열을 정의하려고 하지만 제공한 것과 같은 절대 경로는 피하는 것이 좋습니다.
|DataDirectory| 사용 웹이 아닌 응용 프로그램에서는
가정과 달리 |DataDirectory| 웹 애플리케이션뿐만 아니라 웹 애플리케이션이 아닌 애플리케이션에도 적용할 수 있습니다. 이는 애플리케이션 디렉터리에 상대적인 자리 표시자 경로를 나타냅니다. 귀하의 경우에는 |DataDirectory| 값을 데이터베이스가 있는 경로로 설정하세요.
솔루션 구현
원하는 솔루션을 구현하려면 다음 단계를 따르세요.
App.config 구성:
|DataDirectory|를 사용하여 app.config에서 연결 문자열을 정의합니다. 상대 경로에 대한 자리 표시자:
<add name="MyConnectionString" connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes;" />
DataDirectory 속성 설정:
단위 테스트 클래스에서 |TestInitialize| |DataDirectory|를 설정하는 메소드 속성을 원하는 경로에 추가합니다:
[TestInitialize] public void TestInitialize() { AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases")); // Rest of initialization code... }
여기서는 |Databases| 폴더는 응용 프로그램 디렉터리의 하위 폴더로 간주됩니다.
이 구성을 사용하면 단위 테스트는 실제 경로에 관계없이 상대 경로를 사용하여 데이터베이스에 액세스할 수 있습니다. 애플리케이션의 위치.
위 내용은 단위 테스트에서 SQL Express 연결 문자열의 상대 경로를 구성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!