c# - studio - crear web service java eclipse
cómo generar servicio web desde wsdl (5)
¿Qué le wsdl /serverinterface
conmutadores wsdl /server
o wsdl /serverinterface
? Por lo que entiendo las propiedades de la línea de comando wsdl.exe, eso es lo que estás buscando.
- ADVANCED -
/servidor
Server switch has been deprecated. Please use /serverInterface instead.
Generate an abstract class for an xml web service implementation using
ASP.NET based on the contracts. The default is to generate client proxy
classes.
Por otro lado, ¿por qué quieres crear soluciones tecnológicas obsoletas? ¿Por qué no crear este servicio web como un servicio WCF? ¡Esa es la forma actual y más moderna, mucho más flexible de hacer esto!
Bagazo
ACTUALIZAR:
Cuando uso wsdl /server
en un archivo WSDL, obtengo este archivo creado:
[WebService(Namespace="http://.......")]
public abstract partial class OneCrmServiceType : System.Web.Services.WebService
{
/// <remarks/>
[WebMethod]
public abstract void OrderCreated(......);
}
Básicamente, es casi exactamente el mismo código que se genera al agregar un archivo ASMX a su solución (en el código detrás del archivo - "yourservice.asmx.cs"). No creo que pueda acercarse más a la creación de un archivo ASMX a partir de un archivo WSDL.
Siempre puede agregar el "yourservice.asmx" manualmente, realmente no contiene mucho:
<%@ WebService Language="C#" CodeBehind="YourService.asmx.cs"
Class="YourServiceNamespace.YourServiceClass" %>
El cliente me proporcionó el wsdl para generar el servicio web. Pero cuando usé el comando wsdl.exe, generé la clase .cs. Consumí esa clase en mi servicio web y cuando proporcioné el wsdl al cliente no coincidía con su esquema. En realidad, quiero que el .asmx se genere automáticamente desde el wsdl para poder completar el método web. Para que coincida exactamente con su esquema. Espero que tenga sentido.
Esto puede ser muy tarde para responder. Pero podría ser útil para los necesitados: Cómo convertir WSDL a SVC:
- Suponiendo que tiene un archivo .wsdl en la ubicación "E: /" para facilitar el acceso.
- Prepare el comando para cada archivo .wsdl como: E: / YourServiceFileName.wsdl
- Permisos: suponiendo que tiene los derechos administrativos para realizar permisos. Abra el directorio: C: / Archivos de programa (x86) / Microsoft Visual Studio 12.0 / VC / bin
- Haga clic derecho en amd64 => Seguridad => Editar => Agregar usuario => Todos o usuario actual => Permitir todos los permisos => Aceptar.
- Prepare los Comandos para cada archivo en el editor de texto como: wsdl.exe E: / YourServiceFileName.wsdl / l: CS / server.
- Ahora abra el símbolo del sistema de Visual Studio desde: C: / Archivos de programa (x86) / Microsoft Visual Studio 12.0 / Common7 / Tools / Shortcuts / VS2013 x64 Símbolo del sistema de herramientas nativas.
- Ejecutar arriba del comando.
Vaya al directorio: C: / Archivos de programa (x86) / Microsoft Visual Studio 12.0 / VC / bin / amd64, donde se debe generar el archivo .CS respectivo.
9.Mueva el archivo CS generado a la ubicación adecuada.
No hay una solución mágica para lo que estás buscando, desafortunadamente. Esto es lo que puedes hacer:
crear una clase de interfaz utilizando este comando en la ventana del símbolo del sistema de Visual Studio:
wsdl.exe yourFile.wsdl /l:CS /serverInterface
Use VB o CS para el idioma de su elección. Esto creará un nuevo archivo.cs
o.vb
.Cree un nuevo proyecto de servicio web .NET. Importe el archivo existente en su proyecto: el archivo que se creó en el paso anterior.
En su archivo
.asmx.cs
en Code-View, modifique su clase como tal:
public class MyWebService : System.Web.Services.WebService, IMyWsdlInterface
{
[WebMethod]
public string GetSomeString()
{
//you''ll have to write your own business logic
return "Hello SOAP World";
}
}
No puede garantizar que el WSDL generado automáticamente coincidirá con el WSDL desde el que crea la interfaz de servicio.
En su escenario, debe colocar el archivo WSDL en su sitio web en alguna parte, y hacer que los consumidores usen esa URL. Debe desactivar el protocolo de Documentation
en el archivo web.config para que "? Wsdl" no devuelva un WSDL. Ver el elemento <protocols>
.
Además, tenga en cuenta el primer párrafo de ese artículo:
Este tema es específico de una tecnología heredada. Los servicios web XML y los clientes del servicio web XML ahora deben crearse con Windows Communication Foundation (WCF) .
Puede generar las clases proxy de WS utilizando la herramienta WSCF (Contrato de servicios web primero) de thinktecture.com. Entonces, esencialmente, PUEDES crear servicios web desde wsdl''s. Creando el asmx, tal vez no, pero ese es el bit fácil ¿no? Esta herramienta se integra brillantemente en VS2005-8 (nueva versión para 2010 / WCF llamada WSCF-blue). Lo he usado mucho y siempre he encontrado que es realmente bueno.