를 개최404 오류 내가 메시지를 얻을 WCF 테스트 클라이언트를 사용하여 엔드 포인트에 연결할 때이 문제에 봉착 WCF 서비스
http://localhost:8080/evals/basic
나 '에서 메타 데이터를 가져올 수 없습니다 m 끝점을 첨가
private ServiceHost _serviceHost;
public ServiceHost ServiceHost
{
get { return _serviceHost?? (_serviceHost= new ServiceHost(typeof(EvalService))); }
}
public void Start()
{
ServiceHost.AddServiceEndpoint(typeof(IEvalService),
new BasicHttpBinding(),
"http://localhost:8080/evals/basic");
ServiceHost.AddServiceEndpoint(typeof(IEvalService),
new WSHttpBinding(),
"http://localhost:8080/evals/ws");
ServiceHost.AddServiceEndpoint(typeof(IEvalService),
new NetTcpBinding(),
"net.tcp://localhost:1002/evals");
ServiceHost.Open();
}
을 사용하여 코드의 호스트를 시작하고 난 상태를 확인할 때,이 방법
private void ShowServiceInfo()
{
var message = String.Format("{0} is {1} with these endpoints:\n", _host.ServiceHost.Description.ServiceType, _host.ServiceHost.State);
foreach (var serviceEndpoint in _host.ServiceHost.Description.Endpoints)
{
message += "\n" + serviceEndpoint.Address;
}
MessageBox.Show(message);
}
을 사용 617,451,515,
그때 내가이 엔드 포인트 열립니다 확인
HostService.EvalService를 실행하는 모든처럼 보이는이 메시지 :
http://localhost:8080/evals/basic 통해 http : // localhost : 8080/evals/WS net.tcp : // localhost : 1002/evals
엔드 포인트로 탐색하는 것이 효과가없는 이유는 누구나 알 수 있습니까? -에 대한 메타 데이터를 교환 할 수있는 엔드 포인트
1) 당신은 어떤 MEX 엔드 포인트를하지 않는 것 : (당신이 필요한 설정 파일을 제공하지 않았다)하지만 사람들을 확인할 수 없습니다 -
권한이 있습니까? 관리자로 앱 실행을 시도 했습니까? 엔드 포인트가 허용되지 않는 한 (방법을 잊어 버리거나) 앱을 관리자 권한으로 실행하지 않는 한 앱이 w/서로 통신 할 수 없다는 것을 알고 있습니다. 어쩌면 하나의 앱에서 동일 할 수도 있습니다. –
UAC가 켜져 있지 않기 때문에 UAC가 활성화되었을 때만 가능하겠습니까? 또한 내가 App.config 통해 끝점을 구성하려고하면이 예외가 발생합니다 --------------------------- System.InvalidOperationException : Service 'HostService.EvalService'에는 응용 프로그램 (비 인프라) 엔드 포인트가 없습니다. 이것은 응용 프로그램에 대한 구성 파일이 없거나 서비스 이름과 일치하는 서비스 요소가 구성 파일에서 발견되지 않았거나 서비스 요소에 엔드 포인트가 정의되지 않았기 때. 일 수 있습니다. –
또한 시작 프로젝트를 내 WCF 프로젝트로 설정하면 WCF 서비스 호스트에서이 예외가 발생합니다. System.InvalidOperationException : ServiceMetadataBehavior의 HttpGetEnabled 속성이 true로 설정되고 HttpGetUrl 속성이 상대 주소이지만 아무런 응답도 없습니다 http 기본 주소. http 기본 주소를 제공하거나 HttpGetUrl을 절대 주소로 설정하십시오. –