2014-05-23 2 views
0

내 상황은 내가 WCF 서비스와 모든 컬렉션 작동하는 일반 계약이있다 :WCF 후행 슬래시

[ServiceContract(Name = "GetAllService", ConfigurationName = "GetAllContract")] 
public interface IGetAllCollectionServiceContract<T> where T : IEnumerable 
{ 
    [Audit] 
    [OperationContract] 
    [WebGet(UriTemplate = "/")] 
    T GetAll(); 
} 

이것은 당신이 마지막에/후행를 사용할 때 잘 작동하지만 당신은 당신이하지 않으면 "No data received"메시지를 받으십시오. UriTemplate에서 "/"를 제거하려고 시도했지만 정확한 결과가 나타납니다. 이상한 점은 몇 달 전에 라이브 서버에이 코드를 배포 한 것이고 라이브 서버에서는 탐색 할 때 URL 끝에 슬래시가 추가 된 것처럼 보입니다. 스테이징 서버에서는이 작업을 수행하지 않지만 코드, 기본 IIS 설정 또는이 설정을 적용 할 수있는 웹 구성에는 차이가 없습니다. 나는 IIS 6와 Visual Studio 2012를 사용하고 있습니다. 여러분은이 문제를 일으킬만한 것을 생각할 수 있습니까? 나는 이것에 관해 다른 지위를 읽었고 그들은 도와주지 않았다.

미리 도움을 청하십시오. 아래의 제거하면이 일을 ... 아주 이상한이 문제를 보일 수 있으므로

답변

0

이상한 몇 가지 진단 코드에서 웹 설정에 있었다

<system.diagnostics> 
     <sources> 
      <source name="System.ServiceModel" 
        switchValue="Information, ActivityTracing" 
        propagateActivity="true"> 
      <listeners> 
       <add name="traceListener" 
        type="System.Diagnostics.XmlWriterTraceListener" 
        initializeData= "c:\log\Traces.svclog" /> 
      </listeners> 
     </source> 
     </sources> 
    </system.diagnostics>