none
Atributos de propiedad declarados en clase wcf no se traspasan al cliente RRS feed

  • Pregunta

  • Hola ..hice esta pregunta en el foro de WCF pero tambien tiene que ver con silverlight..

    Pasa que tengo esta propiedad declarada en una clase de un servicio wcf

    private string _GEJ_RAZON_SOCIAL = string.Empty;
    [DataMember]
    public string GEJ_RAZON_SOCIAL { get { return _GEJ_RAZON_SOCIAL; } set { _GEJ_RAZON_SOCIAL = value; } }

    y deseo que el nombre de la propiedad quede visible con otra descripcion, para un dataform de silverlight, y no con el nombre original que es solamente para uso interno(GEJ_RAZON_SOCIAL). Para ello declaro la propiedad asi:

    private string _GEJ_RAZON_SOCIAL = string.Empty;
    [DataMember]
    [Editable(true)]
    [Required(ErrorMessage = "Debe ingresar una Razon Social")]
    [StringLength(100, ErrorMessage = "Maximo 100 caracteres")]
    [Display(Name = "Razon Social:", Description = "Razon Social del la Empresa")]
    public string GEJ_RAZON_SOCIAL { get { return _GEJ_RAZON_SOCIAL; } set { _GEJ_RAZON_SOCIAL = value; } }

    pero sucede que al ejecutar el servicio e instanciar la clase, el nombre "GEJ_RAZON_SOCIAL" no se modifica con el nuevo nombre indicado en "Display" para la propiedad. Qué puede suceder?

    Como informacion adicional:

    Si la clase la contruyo y la utilizo dentro de la app silverlight (la que estoy desarrollando) y luego la cargo en un dataform funciona sin problemas el cambio de nombre. Cada campo aparece respectivamente con el nuevo nombre indicado.

    Pero si la clase la declaro en el servicio wcf, como la tengo,  y luego la referencio desde silverlight, se importa sin problemas la clase pero omite las instrucciones agregadas a la propiedad(display, StringLength, etc)

    ¿estará faltando alguna declaración para que estos atributos tambien pasen a traves de la referencia?

    Eso..y gracias desde ya... quedo atento a sus respuestas.. si necesitan mas codigo para ver mejor el contexto avisenme, no lo subí para no complicar la lectura...

    Roberto


    Roberto Soto Ingeniero de Sistemas
    miércoles, 11 de enero de 2012 21:35

Respuestas

  • Hola,

    Utiliza [DataMember(Name = "El nombre que quieras")]

    Respecto a otras propiedades como StringLenght, no creo que puedas pasarlas al Silverlight usando WCF, en cambio si usas WCF RIA Services sí podrás.

    Espero haberte ayudado.

     


    MCPD Web Developer 4, MCAD
    • Editado Domingo Samper Lara jueves, 12 de enero de 2012 9:53 Ampliar información
    • Marcado como respuesta -RaSv- martes, 17 de enero de 2012 18:23
    jueves, 12 de enero de 2012 9:02

Todas las respuestas

  • Hola,

    Utiliza [DataMember(Name = "El nombre que quieras")]

    Respecto a otras propiedades como StringLenght, no creo que puedas pasarlas al Silverlight usando WCF, en cambio si usas WCF RIA Services sí podrás.

    Espero haberte ayudado.

     


    MCPD Web Developer 4, MCAD
    • Editado Domingo Samper Lara jueves, 12 de enero de 2012 9:53 Ampliar información
    • Marcado como respuesta -RaSv- martes, 17 de enero de 2012 18:23
    jueves, 12 de enero de 2012 9:02
  • ah!..ok probare lo que me indicas y tambien veré lo que me comentas de RIA.. :-)..se ve interesante la solucion

    te cuento como me va...

    Roberto


    Roberto Soto Ingeniero de Sistemas
    jueves, 12 de enero de 2012 16:33
  • Funcionó perfecto, el dataform configura los nombres segun el nuevo nombre de cada propiedad.

    Efectivamente los demas atributos no se traspasan, finalmente creé en cliente una clase se hace de interfaz con la clase del servidor y luego carga los datos en el dataform.

     

    Gracias

     

    Roberto


    Roberto Soto Ingeniero de Sistemas
    martes, 17 de enero de 2012 18:22