Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tema se describe cómo usar los distintos interruptores en Svcutil.exe para generar clientes desde documentos de metadatos.
Los documentos de metadatos pueden estar en un almacenamiento duradero o recuperarse en línea. La recuperación en línea sigue el protocolo WS-MetadataExchange o el protocolo detección de Microsoft (DISCO). Svcutil.exe emite las siguientes solicitudes de metadatos simultáneamente para recuperar metadatos:
Solicitud WS-MetadataExchange (MEX) a la dirección proporcionada.
Solicitud MEX a la dirección proporcionada con
/mexanexado.Solicitud DISCO (con el uso de DiscoveryClientProtocol de los servicios web de ASP.NET) a la dirección proporcionada.
Svcutil.exe genera el cliente en función del lenguaje de descripción de servicios web (WSDL) o del archivo de directiva recibido del servicio. El nombre principal de usuario (UPN) se genera mediante la concatenación del nombre de usuario con "@" y, a continuación, se agrega un nombre de dominio completo (FQDN). Sin embargo, para los usuarios registrados en Active Directory, este formato no es válido y el UPN que genera la herramienta produce un error en la autenticación Kerberos con el siguiente mensaje de error: Error en el intento de inicio de sesión. Para resolver este problema, corrija manualmente el archivo de cliente que generó la herramienta.
svcutil.exe [/t:code] <metadataDocumentPath>* | <url>* | <epr>
Hacer referencia a tipos y compartirlos
| Opción | Descripción |
|---|---|
| /reference:<ruta de archivo> | Hace referencia a tipos en el ensamblado especificado. Al generar clientes, use esta opción para especificar ensamblados que puedan contener tipos que representen los metadatos que se importan. Formato corto: /r |
| /excludeType:<type> | Especifica un nombre de tipo completo o calificado con el nombre de ensamblado que se va a excluir de los tipos de contrato a los que se hace referencia. Formato corto: /et |
Elección de un serializador
| Opción | Descripción |
|---|---|
| /serializer:Auto | Selecciona automáticamente el serializador. Esto usa el DataContract serializador. Si se produce un error, entonces se usa XmlSerializer.Formulario corto: /ser:Auto |
| /serializer:DataContractSerializer | Genera tipos de datos que utilizan el serializador DataContract para la serialización y deserialización.Formato corto: /ser:DataContractSerializer |
| /serializer:XmlSerializer | Genera tipos de datos que usan el XmlSerializer para la serialización y deserialización.Formato corto: /ser:XmlSerializer |
| /importXmlTypes | Configura el serializador DataContract para que importe tipos que no sean de DataContract como tipos IXmlSerializable.Formato corto: /ixt |
| /dataContractOnly | Genera código solo para DataContract tipos. Se generan los tipos ServiceContract.Debe especificar solo los archivos de metadatos locales para esta opción. Formato corto: /dconly |
Elección de un idioma para el cliente
| Opción | Descripción |
|---|---|
| /language:<language> | Especifica el lenguaje de programación que se va a usar para la generación de código. Proporcione un nombre de idioma registrado en el archivo Machine.config o el nombre completo de una clase que herede de CodeDomProvider. Valores: c#, cs, csharp, vb, vbs, visualbasic, vbscript, javascript, c++, mc, cpp Valor predeterminado: csharp Formato corto: /lPara obtener más información, consulte CodeDomProvider clase. |
Elección de un espacio de nombres para el cliente
| Opción | Descripción |
|---|---|
| /namespace:<string,string> | Especifica una asignación desde un esquema WSDL o XML targetNamespace a un espacio de nombres de Common Language Runtime (CLR). El uso de un asterisco (*) para el targetNamespace asigna todos los targetNamespaces sin una asignación explícita a ese espacio de nombres de CLR.Para asegurarse de que el nombre de contrato de mensaje no produce una colisión con el nombre de la operación, debería certificar o la referencia de tipo con dos puntos dobles ( ::) o asegurarse de que los nombres son únicos.Valor predeterminado: derivado del espacio de nombres de destino del documento de esquema para DataContracts. El espacio de nombres predeterminado se usa para todos los demás tipos generados.Formato corto: /n |
Elección de un enlace de datos
| Opción | Descripción |
|---|---|
| /enableDataBinding | Implementa la interfaz INotifyPropertyChanged en todos los tipos DataContract para habilitar la vinculación de datos.Formato corto: /edb |
Generación de la configuración
| Opción | Descripción |
|---|---|
| /config:<configFile> | Especifica el nombre de archivo para el archivo de configuración generado. Valor predeterminado: output.config |
| /mergeConfig | Combina la configuración generada en un archivo existente, en lugar de sobrescribir el archivo existente. |
| /noConfig | No genere archivos de configuración. |