2010-03-15 13 views
20

Tenemos un servicio web llamado, digamos Foo.Control de versión: svcmap, disco, xsd, wsdl, svcinfo y archivos de origen de datos

Así que hay un archivo Foo.svc y un código detrás de Foo.svc.cs.

Agregamos un proyecto de Silverlight y deseamos utilizar los servicios de Foo.svc, por lo que agregamos una referencia de servicio y llamamos a su espacio de nombres FooBar.

Esto crea los siguientes archivos:

  • Reference.cs
  • Reference.svcmap
  • Foo.xsd
  • Foo.disco
  • configuration.svcinfo
  • Foo.wsdl
  • También varios archivos * .datasource.

Con el tiempo actualizamos el Foo.svc y agregamos más servicios web (métodos e interfaces) y la cantidad de archivos en el directorio de FooBar está creciendo.

tengo 26 Foo (nn) .xsd archivos en este directorio - donde nn = 1 a 26.

Mi configuration.svcinfo es hasta configuration91.svcinfo.

Mi pregunta es esta? ¿Alguno de estos archivos necesita ser controlado por la versión? ¿Pueden eliminarse todos ellos cada vez que realice una build \ deploy (siempre que haga una referencia de servicio de actualización)?

+0

No voy a poner esto como respuesta porque no estoy seguro. Pero solo el archivo reference.cs es el archivo más importante para mí. En ocasiones, slsvcutil.exe no funciona correctamente con vs, así que cuando lo uso para generar una referencia para silverlight, solo se genera el archivo Reference.cs. –

+0

¡Gracias! Acabo de ver la misma pregunta de David en los foros de Silverlight. Con una respuesta inútil, por supuesto. Dios bendiga el desbordamiento de la pila –

Respuesta

14

Esos archivos xsd son solo metadatos de su servicio que acababan de usarse cuando creó o actualizó una referencia de servicio. En realidad, puede eliminarlos ya que solo se usaron cuando se está generando el archivo de referencia. No es necesario controlar la versión de esos archivos.

+7

¿Es necesario alguno de estos archivos? ¿O todo está contenido en ServiceReferences.config? ¿Está bien eliminar todos los .datasource, todos .diso, todos .svcinfo, e incluso references.cs? –

23

El archivo Reference.svcmap es prácticamente la definición de la referencia de servicio. Contiene las diferentes configuraciones y enlaces de origen. Reference.svcmap definitivamente debe ser controlado por fuente porque en realidad es LA referencia de servicio en el sentido de elementos de proyecto.

Reference.cs contiene los contratos y el proxy generados con respecto a los cuales se compila su código. Ya sea para controlar la fuente o no para controlar la fuente, el archivo depende de usted. Generalmente, esto es parte del código del proyecto y debe ser controlado por la fuente, pero al ser generado automáticamente, a veces puede ocasionar un check-in accidental.

Todos los demás archivos son archivos TEMPORALES utilizados al generar el contrato y el código de proxy. Juntos forman la suma de los metadatos expuestos por el servicio que incluye contratos de servicio (* .wsdl), contratos de datos (* .xsd) e información de configuración (* .svcinfo).

Cuestiones relacionadas