2011-04-06 11 views
7
<endpointBehaviors> 
    <behavior name="singleFileEndpointBehavior"> 
    <wsdlExtensions singleFile="True" /> 
    </behavior> 
</endpointBehaviors> 

"wsdlExtensions" tiene una línea azul debajo que indica algo incorrecto.WCFExtras: ¿el elemento bahavior tiene el elemento secundario no válido 'wsdlExtensions'?

The element 'behavior' has invalid child element 'wsdlExtensions' ...

¿Alguien sabe cómo solucionar este problema?

+0

Supongo que se trata de un error que se produce en Visual Studio y no durante el tiempo de ejecución. ¿Correcto? –

+0

@Rest Wing, en realidad solo es una pista/advertencia. El proyecto todavía se construye y ejecuta. – Sam

Respuesta

7

Defina el esquema para el elemento de extensión de comportamiento wsdlExtensions.

<xs:complexType name="wsdlExtensions"> 
    <xs:attribute name="singleFile" type="boolean_Type" use="optional" default="True" /> 
</xs:complexType> 

Incluir el esquema del nuevo elemento en el archivo de esquema utilizado para Intellisense

Visual Studio por lo general utiliza el archivo %VS_INSTALL_DIR%\xml\Schemas\DotNetConfig.xsd de Intellisense, a menos que el Visual Studio está configurado para utilizar algún otro archivo.

Para verificar qué archivos se usan para Intellisense, seleccione XML-> Esquemas mientras el archivo de configuración está abierto. Todos los archivos que tienen una marca de verificación en la columna Use se utilizan para Intellisense.

<?xml version="1.0" encoding="us-ascii"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      xmlns:vs="http://schemas.microsoft.com/Visual-Studio-Intellisense" 
      elementFormDefault="qualified" attributeFormDefault="unqualified" 
      vs:helpNamespace="http://schemas.microsoft.com/.NetConfiguration/v2.0"> 
    <!-- Child elements omitted for brevity --> 
</xs:schema> 

Definir nuevo elemento en el nivel apropiado en el archivo de esquema

El nivel adecuado para el elemento de extensión wsdlExtensions comportamiento es system.serviceModel/C/behaviors/C/endpointBehaviors/C/behavior/C donde C es complexType/choice elemento.

<?xml version="1.0" encoding="us-ascii"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      xmlns:vs="http://schemas.microsoft.com/Visual-Studio-Intellisense" 
      elementFormDefault="qualified" attributeFormDefault="unqualified" 
      vs:helpNamespace="http://schemas.microsoft.com/.NetConfiguration/v2.0"> 
    <!-- Omitted elements at various levels for brevity --> 
    <xs:element name="system.serviceModel" vs:help="configuration/system.serviceModel"> 
     <xs:complexType> 
      <xs:choice minOccurs="0" maxOccurs="unbounded"> 
       <xs:element name="behaviors" vs:help="configuration/system.serviceModel/behaviors"> 
        <xs:complexType> 
         <xs:choice minOccurs="0" maxOccurs="unbounded"> 
          <xs:element name="endpointBehaviors" vs:help="configuration/system.serviceModel/behaviors/endpointBehaviors"> 
           <xs:complexType> 
            <xs:choice minOccurs="0" maxOccurs="unbounded"> 
             <xs:element name="behavior" vs:help="configuration/system.serviceModel/behaviors/endpointBehaviors/behavior"> 
              <xs:complexType> 
               <xs:choice minOccurs="0" maxOccurs="unbounded"> 
                <xs:element name="wsdlExtensions" type="wsdlExtensions" /> 
               </xs:choice> 
              </xs:complexType> 
             </xs:element> 
            </xs:choice> 
           </xs:complexType> 
          </xs:element> 
         </xs:choice> 
        </xs:complexType> 
       </xs:element> 
      </xs:choice> 
     </xs:complexType> 
    </xs:element> 
</xs:schema> 
+0

impresionante ... Lo probaré. – Sam

+1

Gracias por la respuesta detallada. El '' tiene otro atributo que omitió: '' – jpo

Cuestiones relacionadas