2009-07-13 9 views

Respuesta

9

Como regla general; al diseñar un tipo usted mismo debe ser una clase, a menos que el tipo represente un solo valor, en cuyo caso debe ser una estructura.

4

Fredrik tiene la respuesta correcta. Solo agregaré que debe tener en cuenta que el cliente nunca verá su Contrato de datos. Se traducirá al Esquema XML y se incluirá en el WSDL. Del lado del cliente, recuerde, podría ser un cliente ASP Perl o incluso Classic, algo que no tiene ningún concepto de valor vs. semántica de referencia.

Por lo tanto, el valor frente a la referencia es algo que solo le importa al servicio, no a los clientes.

+0

Editado q. Eso es exactamente lo que trato de debatir aquí;) – user134706

0

En realidad, John Saunders no es del todo correcto. El WSDL generado por WCF hace de hecho indica si los objetos son o no valores o tipos de referencia. Cuando tiene WCF en el lado del cliente, puede aprovechar esto. Además, el valor vs referencia tiene un impacto en el atributo isNullable de varias partes del WSDL que puede cambiar la semántica.

Por supuesto, debe asegurarse de no pintarse en una esquina de incompatibilidad: un tipo de valor anulable no es necesariamente lo mismo que un tipo de referencia (o posible) en algunos entornos de cliente.

Cuestiones relacionadas