>백엔드 개발 >C++ >.NET 응용 프로그램에서 상대적으로 SQL Express MDF 파일 위치를 지정하는 방법은 무엇입니까?

.NET 응용 프로그램에서 상대적으로 SQL Express MDF 파일 위치를 지정하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-28 14:34:18579검색

How to Specify SQL Express MDF File Location Relatively in .NET Applications?

SQL Express 연결 문자열: 애플리케이션과 관련된 MDF 파일 위치 지정

C# 단위 테스트에서 SQL Express 데이터베이스로 작업할 때 다음이 될 수 있습니다. 연결 문자열에 MDF 파일의 절대 파일 경로를 지정하는 것이 불편합니다. 대신 상대 경로나 변수를 사용하는 것이 더 나을 수도 있습니다.

.NET Core 웹 애플리케이션:

.NET Core를 사용하는 웹 애플리케이션에서는 DataDirectory를 활용할 수 있습니다. 애플리케이션의 데이터 디렉터리를 동적으로 참조하는 변수입니다. 이 디렉터리는 일반적으로 기본적으로 wwwrootApp_Data에 있습니다. 다음과 같이 appsettings.json에서 연결 문자열을 구성할 수 있습니다.

{
  "ConnectionStrings": {
    "MyConnectionString": "Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes"
  }
}

.NET Core 데스크톱 애플리케이션:

.NET Core의 데스크톱 애플리케이션의 경우 DataDirectory 변수는 지원되지 않습니다. 대신 단위 테스트 픽스처 또는 설정 메서드에서 DataDirectory 속성을 설정할 수 있습니다.

[TestInitialize]
public void TestInitialize()
{
    AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases"));

    // Rest of initialization logic
}

이 설정을 사용하면 DataDirectory 변수를 사용하여 appsettings.json에서 연결 문자열을 지정할 수 있습니다.

{
  "ConnectionStrings": {
    "MyConnectionString": "Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes"
  }
}

두 경우 모두 데이터베이스 디렉터리가 프로젝트에 포함되어 있고 필요한 MDF 파일이 포함되어 있는지 확인하세요.

위 내용은 .NET 응용 프로그램에서 상대적으로 SQL Express MDF 파일 위치를 지정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.