2013-12-21 2 views
0

웹 참조를 포함하고 동적으로 설정된 DLL이 있습니다. 그 DLL은 다른 프로그램에 의해 호출되며 아이디어는 웹 서비스로가는 DLL로부터 메소드를 호출하는 것입니다. Assembly.LoadFrom 메서드를 사용하지만 어셈블리를 호출 할 때 DLL과 함께있는 App.Config에서 URL을 읽지 않습니다. DLL이 동적으로 호출 될 때 App.Config에서 주소를 읽을 수있게하려면 어떻게해야합니까?웹 서비스가 포함 된 어셈블리 호출

+0

제목을 변경하는 것이 좋습니다. 그것은 당신의 질문에 완전히 무관합니다. 귀하의 문제는 app.config에서 값을 읽을 수 없다는 것입니다 ... –

+0

고마워,하지만 그 주제가 정확한 문제를 설명한다고 생각합니다. 나는 App.Config에서 읽으려고하지 않고있다. 웹 서비스를 사용하려고합니다. 제대로하기 위해서는 올바른 방법이 필요합니다. – eddyuk

답변

0

dll을 추가하고 app.config 속성 복사본을 output directory = copy always로 설정하는 app.config를 추가하십시오.

+0

빌드시 프로젝트가 설정 파일을 생성합니다. 문제는 그것이 읽히지 않는다는 것입니다. – eddyuk

-1

문제는 app.config에서 값을 읽을 수 없다는 것입니다.

  1. 이러한 설정 파일이 존재하지 않거나 범위
  2. config 파일이 실제로 읽어 부족하지만 검색 특정 값이없는이 두 가지 이유가있을 수 있습니다.

두 가지를 확인합니다. 실제로 app.config 파일이 있습니까? app.config 파일이 있으면 실제 값 (url)을 포함합니까? dll을 참조하는 프로젝트에 자체 구성 파일이 있는지도 확인해야합니다. 그렇다면 dll에서 각 값을 가져 오는 데 사용되는 구성 파일입니다.

.NET에서 설정 파일을 사용하는 것에 대한 더 나은 아이디어를 얻으려면 this 게시물을 제출할 것을 제안합니다.

희망이 있습니다.

+0

이것은 이론적으로 질문에 대답 할 수 있지만 여기에 대답의 핵심 부분을 포함하고 참조 용 링크를 제공하는 것이 바람직합니다 (http://meta.stackexchange.com/q/8259). – Sklivvz

0

DLL의 소스 코드에 액세스 할 수 있다면 오류 처리를 사용하는 것이 좋습니다.

이렇게하면이 시나리오에서 많은 도움이됩니다. 메서드가 실제로 실행되기 전에 DLL 메서드가 app.config 파일을 확인하도록하십시오.

public object MyWebServiceDLLMethod() 
{ 
    if(!File.Exists(MyPathToAppConfig)) 
    { 
    throw new Exception("File not found."); 
    return null; 
    } 
    //"real" code for the method goes here. 

} 
관련 문제