Principales respuestas
Separador decimal al consumir OSB

Pregunta
-
Buenas,
Se tiene un OSB desplegado en un servidor Web Logic el cual es consumido desde una aplicación Asp.Net Web Forms. El OSB invoca un procedimiento almacenado que devuelve como parámetro de salida un Number con separador decimal punto ya que así debe estar configurado en la BD Oracle. Al invocar desde SOAP-UI al servicio, el separador decimal cambia a coma y de igual manera ocurre al consumirlo desde la aplicación .Net lo cual provoca un error de Formato en .Net al no poder realizar la conversión a decimal. He revisado el separador decimal numérico desde el Panel Control de mi equipo de desarrollo y está con punto y me pregunto ¿por qué SOAP-UI me devuelve coma? o es que se debe realizar la configuración en el servidor Web Logic. Había pensado cambiar desde el código C# la coma a punto y solucionado el asunto pero creo que no es lo más saludable.
Por favor su apoyo a ver si me aclaran, muchas gracias.
Respuestas
-
hola
de igual manera ocurre al consumirlo desde la aplicación .Net lo cual provoca un error de Formato en .Net al no poder realizar la conversión a decimal
como invocas desde .net al servicio? mencionas un soap, pero no tienes que defini esto desde .net ya que puedes crear un Web Reference para que se cree un proxy con codigo que usarias para invocar
de esta forma deberias tener una propiedad donde asignes un valor numerico, con lo cual el signo de puntuacion no deberia afectar
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Moderador MModerator lunes, 28 de agosto de 2017 4:07
Todas las respuestas
-
hola
de igual manera ocurre al consumirlo desde la aplicación .Net lo cual provoca un error de Formato en .Net al no poder realizar la conversión a decimal
como invocas desde .net al servicio? mencionas un soap, pero no tienes que defini esto desde .net ya que puedes crear un Web Reference para que se cree un proxy con codigo que usarias para invocar
de esta forma deberias tener una propiedad donde asignes un valor numerico, con lo cual el signo de puntuacion no deberia afectar
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Moderador MModerator lunes, 28 de agosto de 2017 4:07
-
Gracias Leandro por reponder,
puedes crear un Web Reference para que se cree un proxy con codigo que usarias para invocar
>> Efectivamente, he creado un Web Reference utilizando el asistente que crea un Reference.cs creo que ésta es la "clase proxy" a la que te refieres (en realidad son varias clases que se crean dentro de este archivo). Dentro de dicho archivo se encuentra una clase que contiene el método que invoco y un parámetro de salida llamado saldo de tipo float. Al invocar dicho método ocurre una Excepción pero cuando cambio dicho tipo a string ya no ocurre el error y observo que devuelve la coma como separador decimal a pesar que la Base de Datos devuelve punto.