2014-02-28 3 views
3

동일한 연결 문자열을 사용할 여러 프로젝트가있는 솔루션이 있습니다. 이러한 문자열을 사용하여 각 프로젝트에 구성 파일을 추가 할 수 있지만 그 안에있는 모든 개별 프로젝트에서 액세스 할 수있는 전체 솔루션에 대한 단일 구성 파일을 추가하는 방법이 있는지 궁금합니다.Visual Studio에서 솔루션 수준 구성 파일을 만들 수 있습니까?

답변

4

각 프로젝트에 구성 파일을 추가하는 대신 Add as Link을 사용하면 모든 프로젝트에서 액세스하는 파일 복사본이 하나만 있습니다.

기본적으로 파일 자체가 아닌 주소가 추가됩니다. 즉, 주소에서 파일을 변경하면 주소에서 읽는 모든 프로젝트에 영향을 미칩니다.

0

'시작'프로젝트에서 구성 파일 만 필요합니다.

모든 프로젝트가 시작 프로젝트의 단일 구성 파일에서 동일한 연결 문자열을 사용한다는 점에서 여러 프로젝트가있는 솔루션이 있습니다.

양자 택일로, 당신은 모든 프로젝트에 액세스 (NET의 설정 파일을 사용하지 않는) 자신의 설정 파일

2

첫 번째 프로젝트에서 한 번 설정 만들기를 만들 수 있습니다.

다른 모든 프로젝트는 기존 항목을 추가하지만 추가 버튼의 화살표를 누르고 링크로 추가을 대신 입력하십시오.

하나의 파일이 프로젝트간에 공유됩니다.

0

MVC/UI 프로젝트가있는 경우 솔루션에있는 프로젝트에 따라 web.config를 사용하여 같은 솔루션 내의 다른 프로젝트에서 참조 할 수 있습니다.

샘플 : MVC 프로젝트에서

의 Web.config : 다른 프로젝트/클래스 라이브러리이 항상 솔루션 수준에서 나를 위해 일했다

public List<Products> GetProducts() 
{ 
    using (var multi = new SqlConnection(ConfigurationManager.ConnectionStrings["name1"].ConnectionString).QueryMultiple("SPROC NAME", commandType: CommandType.StoredProcedure)) 
    { 
     return multi.Read<Products>().ToList(); 
    }  
} 

에서

<configuration> 
... 
    <connectionStrings> 
    <add name="name1" connectionString="Data Source=HOSTNAME_DB_INSTANCE;Initial Catalog=DB_NAME;Integrated Security=True" providerName="System.Data.SqlClient" /> 
    <add name="name2" connectionString="Data Source=HOSTNAME_DB_INSTANCE;Initial Catalog=DB_NAME;Integrated Security=True" providerName="System.Data.SqlClient" /> 
    <add name="name3" connectionString="Data Source=HOSTNAME_DB_INSTANCE;Initial Catalog=DB_NAME;Integrated Security=True" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
... 
</configuration> 

.

관련 문제