C#의 단위 테스트 프로젝트에서 SQL Express 데이터베이스를 사용할 때 상대 경로에 대한 mdf 파일 위치를 지정하는 데 문제가 발생합니다. 응용 프로그램의 실행 파일에. 절대 경로를 사용하는 것은 불편하며 |DataDirectory| 웹 애플리케이션용으로 예약된 변수는 이 시나리오에서 활용할 수 있습니다.
숙련된 개발자의 아이디어를 결합하여 실행 가능한 솔루션이 탄생합니다. app.config 파일에서 연결 문자열을 다음과 같이 정의합니다.
<add name="MyConnectionString" connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes;" />
단위 테스트 클래스 내에서 DataDirectory 속성을 동적으로 설정할 수 있습니다.
[TestInitialize] public void TestInitialize() { AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases")); // Rest of initialize implementation... }
DataDirectory 속성을 설정하여 실행 파일과 관련된 데이터베이스 폴더의 경로에 연결하면 연결 문자열은 단위 테스트 중에 mdf 파일을 성공적으로 찾습니다. 이 접근 방식을 사용하면 배포 환경에 맞게 조정되는 동적 연결 문자열이 가능합니다.
위 내용은 C# 단위 테스트에서 SQL Express 연결 문자열에 대한 상대 경로를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!