Cuando agrego una referencia de servicio WCF en Visual Studio 2008, se crea un directorio llamado Referencia de servicio \ ServiceReferenceNamespace.Qué son estos archivos de referencia de servicio WCF
En este directorio, hay archivos llamados Service.xsd, Service1.xsd, Service2.xsd, Service3.xsd y Service4.xsd. Los archivos no son duplicados: los diferentes archivos definen diferentes tipos y elementos. Cuando creé el servicio por primera vez, solo había un archivo, pero se agregaron más archivos * de servicio cuando agregué más DataContract y OperationContracts.
Parece un poco extraño que se generen 5 archivos diferentes y no solo uno. Si elimino la referencia del servicio (y, por lo tanto, el directorio) y luego lo vuelvo a agregar, se vuelven a agregar los mismos archivos.
¿Alguien puede explicar por qué se crean varios archivos y no solo uno?
Quizás no estaba claro. Mi pregunta era por qué había Service1.xsd, Service2.xsd, Service3.xsd y Service4.xsd y no solo Service.xsd. – Martin
Obtendrá un archivo xsd por espacio de nombres de tipo. Para los servicios WCF que usan DataContractSerializer, normalmente obtendrá un espacio de nombres XSD por espacio de nombres CLR que utilizan sus tipos, más uno adicional para los tipos incorporados. Si desea colocar todos los tipos definidos por la aplicación en un espacio de nombre XSD, puede usar [DataContract (Namespace = "...")] para establecerlo en cualquier URI. – alexdej