web service consejo porfavor

31/10/2006 - 11:39 por Eduardo Silva | Informe spam
Hola a todos,

Estoy aca en inglaterra tierra ajena y estrana intentando
sobrevivir, en el trabajo me encomendaron a hacer un webservice (el primero
que hago) una parate se supone que la tengo que hacer yo y otra una empresa.
Cada uno lo desarrollo de la forma que le parecio mejor. Los dos estamos
trabajando con .net

Primero construi dos funciones que entregaban el codigo de error y
un dataset pero no les gusto porque repietia dos campos y querian
optimizarlo con elementos y un atributo de xml.
Yo despues de volverme loco intentando que funcione como xml opte
por hacer una jerarquia de clases a las cuales las cargo con los datos que
quiero enviar. Expongo una funcion con los parametros y retorno la clase en
cuestion:

<WebMethod()> _
Public Function GetCandidateAchievement(ByVal candidateNumber As String, _
ByVal
firstName As String, ByVal
lastName As String, ByVal passportNo As String) As AchievementSubmission

A mi me gusta este metodo porque es bien claro a la hora de ir a buscar
datos a la base sin tener que pensar mucho en convertir a xml.

Todo funciona bien pero la empresa que esta haciendo la otra parte dice que
esta mal que lo que deveria estar entregandoles es un xmlDocument y de hecho
cuando yo llamo a la funcion de ellos no tengo parametros para llenar sino
un solo parametro que espera un xmlDocument.


Mi pregunta es como se supone que se hace esto para mi encapsular los datos
en un xmlDocument me saca la posibilidad de llamar a la funcion directamente
sin tener que validar el xmlDocument y me parece mucho mas facil de usar
pero ellos dicen que esta es la forma de hacerlo correcto y como hablan en
ingles y rapido no les entiendo mucho.

Que les parece es mala practica en web services entregar directamente la
funcion con los parametros? es mejor mandar un xmlDocument?


Ayuda por favor estoy perdido no tengo a quien preguntar estube 3 semanas
leyendo libros y no encontre una respuesta clara sobre el camino a seguir,


Muchas Gracias,


Eduardo

Preguntas similare

Leer las respuestas

#1 Javier Reséndiz C.
06/11/2006 - 21:43 | Informe spam
Hola Eduardo:

El atributo <WebMethod>, permite publicar tu método como WebService. Esto
permite que .Net, genere el resultado como un documento xml cuya descripción
está disponible como parte de generación del webservice (wsdl). Esto es, si
ellos tienen claro el concepto de Web Services no deberían tener problemas
para invocar la funcionalidad del tuyo.

Asp.Net, permite que te evites crear todo el código requerido para devolver
la respuesta xml.

Si te piden un xmlDocument, entonces creo que ellos están trabajando de más,
al tener que analizar el documento de respuesta a mano (cuando .Net te
permite transparentar eso).

Saludos.

"Eduardo Silva" wrote:

Hola a todos,

Estoy aca en inglaterra tierra ajena y estrana intentando
sobrevivir, en el trabajo me encomendaron a hacer un webservice (el primero
que hago) una parate se supone que la tengo que hacer yo y otra una empresa.
Cada uno lo desarrollo de la forma que le parecio mejor. Los dos estamos
trabajando con .net

Primero construi dos funciones que entregaban el codigo de error y
un dataset pero no les gusto porque repietia dos campos y querian
optimizarlo con elementos y un atributo de xml.
Yo despues de volverme loco intentando que funcione como xml opte
por hacer una jerarquia de clases a las cuales las cargo con los datos que
quiero enviar. Expongo una funcion con los parametros y retorno la clase en
cuestion:

<WebMethod()> _
Public Function GetCandidateAchievement(ByVal candidateNumber As String, _
ByVal
firstName As String, ByVal
lastName As String, ByVal passportNo As String) As AchievementSubmission

A mi me gusta este metodo porque es bien claro a la hora de ir a buscar
datos a la base sin tener que pensar mucho en convertir a xml.

Todo funciona bien pero la empresa que esta haciendo la otra parte dice que
esta mal que lo que deveria estar entregandoles es un xmlDocument y de hecho
cuando yo llamo a la funcion de ellos no tengo parametros para llenar sino
un solo parametro que espera un xmlDocument.


Mi pregunta es como se supone que se hace esto para mi encapsular los datos
en un xmlDocument me saca la posibilidad de llamar a la funcion directamente
sin tener que validar el xmlDocument y me parece mucho mas facil de usar
pero ellos dicen que esta es la forma de hacerlo correcto y como hablan en
ingles y rapido no les entiendo mucho.

Que les parece es mala practica en web services entregar directamente la
funcion con los parametros? es mejor mandar un xmlDocument?


Ayuda por favor estoy perdido no tengo a quien preguntar estube 3 semanas
leyendo libros y no encontre una respuesta clara sobre el camino a seguir,


Muchas Gracias,


Eduardo








Respuesta Responder a este mensaje
#2 Eduardo Silva
10/11/2006 - 11:02 | Informe spam
Gracias Javier,

Estoy de acuerdo con vos yo creo que lo complican al pedo. Igualmente
lo tube que hacer como me pidieron y por suerte funciona y de paso aprendi
un poco de la clase de xml de .net

por suerte con Dim xs As New
Serialization.XmlSerializer(achievementsInfo.GetType()) se puede serializar
la clase y mandarla como un xmlDocument.

Gracias por tu respuesta, Saludos


Eduardo


"Javier Reséndiz C." wrote in
message news:
Hola Eduardo:

El atributo <WebMethod>, permite publicar tu método como WebService. Esto
permite que .Net, genere el resultado como un documento xml cuya
descripción
está disponible como parte de generación del webservice (wsdl). Esto es,
si
ellos tienen claro el concepto de Web Services no deberían tener problemas
para invocar la funcionalidad del tuyo.

Asp.Net, permite que te evites crear todo el código requerido para
devolver
la respuesta xml.

Si te piden un xmlDocument, entonces creo que ellos están trabajando de
más,
al tener que analizar el documento de respuesta a mano (cuando .Net te
permite transparentar eso).

Saludos.

"Eduardo Silva" wrote:

Hola a todos,

Estoy aca en inglaterra tierra ajena y estrana intentando
sobrevivir, en el trabajo me encomendaron a hacer un webservice (el
primero
que hago) una parate se supone que la tengo que hacer yo y otra una
empresa.
Cada uno lo desarrollo de la forma que le parecio mejor. Los dos estamos
trabajando con .net

Primero construi dos funciones que entregaban el codigo de error
y
un dataset pero no les gusto porque repietia dos campos y querian
optimizarlo con elementos y un atributo de xml.
Yo despues de volverme loco intentando que funcione como xml opte
por hacer una jerarquia de clases a las cuales las cargo con los datos
que
quiero enviar. Expongo una funcion con los parametros y retorno la clase
en
cuestion:

<WebMethod()> _
Public Function GetCandidateAchievement(ByVal candidateNumber As String,
_
ByVal
firstName As String, ByVal
lastName As String, ByVal passportNo As String) As AchievementSubmission

A mi me gusta este metodo porque es bien claro a la hora de ir a buscar
datos a la base sin tener que pensar mucho en convertir a xml.

Todo funciona bien pero la empresa que esta haciendo la otra parte dice
que
esta mal que lo que deveria estar entregandoles es un xmlDocument y de
hecho
cuando yo llamo a la funcion de ellos no tengo parametros para llenar
sino
un solo parametro que espera un xmlDocument.


Mi pregunta es como se supone que se hace esto para mi encapsular los
datos
en un xmlDocument me saca la posibilidad de llamar a la funcion
directamente
sin tener que validar el xmlDocument y me parece mucho mas facil de usar
pero ellos dicen que esta es la forma de hacerlo correcto y como hablan
en
ingles y rapido no les entiendo mucho.

Que les parece es mala practica en web services entregar directamente la
funcion con los parametros? es mejor mandar un xmlDocument?


Ayuda por favor estoy perdido no tengo a quien preguntar estube 3 semanas
leyendo libros y no encontre una respuesta clara sobre el camino a
seguir,


Muchas Gracias,


Eduardo








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida