보안 검색에 실패했습니다.xsd 파일에서 maxOccurs = "unbounded"를 방지하는 방법
은 maxOccurs = "무제한의"
내 웹 서비스 중 하나에 서비스 참조 내 실버 클라이언트상의 XSD에서 온다.
xsd가 이런 방식으로 생성되지 않도록 웹 서비스에서 설정할 수있는 속성이나 무언가가 있습니까?
실제로는 WCF입니다.
보안 검색에 실패했습니다.xsd 파일에서 maxOccurs = "unbounded"를 방지하는 방법
은 maxOccurs = "무제한의"
내 웹 서비스 중 하나에 서비스 참조 내 실버 클라이언트상의 XSD에서 온다.
xsd가 이런 방식으로 생성되지 않도록 웹 서비스에서 설정할 수있는 속성이나 무언가가 있습니까?
실제로는 WCF입니다.
WCF에는 지원이 없습니다. wcf가 wsdl + xsd 클래스를 생성 할 때 실제 계약을 먼저 작성하고 수동으로 메시지 계약을 작성해도 maxOccurs 값이 1보다 큰 경우이를 무시합니다. 따라서 서비스를 공개하면 생성 된 계약에는 maxOccurs="unbounded"
.
, 당신은 IWsdlExportExtension, IEndpointBehavior
인터페이스를 구현하는 사용자 정의 엔드 포인트 동작을 구현하여 변화를 쉽게이 동작을 수 있습니다 서비스 호스트 프로젝트에서
이렇게 생성 된 계약에는 생성 된 계약 대신 본래의 스키마가 포함됩니다.
또한 xsd를 사용하여 XML 파일의 유효성을 검사해야합니다. WCF는 maxOccurs
특성의 유효성을 검사하지 않기 때문입니다.