난에 대한 클라이언트 프록시 클래스를 생성 할 필요가 라이브러리를 가지고 있고,이 명령과 내 로컬 상자에서 서비스를 실행할 때 기존의 코드는 잘 작동WCF 클라이언트 프록시 생성
svcutil.exe /config:thn /r:Citi.Rbcs.BusGn.dll /r:Citi.Rbcs.Buscm.dll net.tcp://localhost:8088/RbcThnService/mex
클라이언트 프록시가 올바르게 생성됩니다. RbcThnService는 IRbcThinService 인터페이스를 사용합니다.
다음[OperationContract(ProtectionLevel = ProtectionLevel.EncryptAndSign)]
[FaultContract(typeof (GenericException))]
[FaultContract(typeof (CustomException))]
RbcCustomerStructure GetCustomerStructures(string CustomerId, short QueueId, DateTime dateUpdate, RbcSecurityContext securityContext);
재 구축하고 서비스를 설치하고 클라이언트 프록시를 재생하려고 다음과 같이 내가 그 인터페이스에 새로운 방법을 추가 할 경우, 나는
There is an error in the XML document.
The value for the 'type' attribute is invalid - 'q32:ArrayOfstring' is an invalid value for the 'type' attribute.
를 그것은을 찾지 못하는 것처럼 그것은 소리를 얻을 특정 유형의 선언에 있지만 이상한 점은 인터페이스에 클라이언트 프록시가 올바르게 생성 할 수있게 해주는 원본 라이브러리의 동일한 서명과 함께 다른 메소드가 있다는 것입니다. 그래서 저는 새로운 이름으로 이미 존재하는 것과 동일한 방법을 만들고 있습니다.
누구에게 의견이 있습니까?
업데이트 : 기존의 방법 중 하나라도 주석 처리하고 다시 시도하면 플롯이 두꺼워집니다. 새로운 방법으로 작동합니다. 나는 그것을 제거하는 것만으로 몇 가지 방법과 새로운 방법을 시도해 보았다. 나는 점진적으로 다른 방법을 하나씩 다시 도입했고 계속해서 작업을 계속했습니다. 마지막에 하나를 추가 할 때까지 오류가 발생했습니다.
흥미롭게도 원래 메서드가 주석 처리되어 작동한다는 것을 알았고 두 번째 더미 새 메서드를 만들었고 같은 오류가 발생했지만 ArrayOfstring 대신 다른 형식을 사용했기 때문에 실패했습니다 의.
그래서 내가 틀린 나무를 짖지 않는다면 인터페이스 정의에있는 메소드의 수나 생성 된 XML의 길이에 잠재적으로 연관되어있는 것처럼 보입니다. 내가 알아야 할 한계가 있습니까?