26

我们有一个名为 Foo 的 web 服务。

所以有一个Foo.svc文件和Foo.svc.cs后面的代码。

我们添加了一个 silverlight 项目并希望使用 Foo.svc 服务,因此我们添加了一个服务引用并将其命名为命名空间 FooBar。

这将创建以下文件:

  • 参考.cs
  • 参考.svcmap
  • Foo.xsd
  • Foo.disco
  • 配置.svcinfo
  • Foo.wsdl
  • 还有各种 *.datasource 文件。

随着时间的推移,我们更新了 Foo.svc 并添加了更多的 Web 服务(方法和接口),并且 FooBar 目录中的文件数量正在增长。

我在这个目录中有 26 个 Foo(nn).xsd 文件 - 其中 nn = 1 到 26。

我的 configuration.svcinfo 是 configuration91.svcinfo。

我的问题是这个?这些文件中的任何一个都需要版本控制吗?每次进行构建\部署时它们都可以删除吗(只要您进行更新服务引用)?

4

2 回答 2

35

Reference.svcmap 文件实际上是服务引用的定义。它包含不同的设置以及源链接。Reference.svcmap 绝对应该是源代码控制的,因为它实际上是项目项意义上的服务引用。

Reference.cs 包含编译代码所依据的生成的合约和代理。是否对文件进行源代码控制取决于您。通常,这是项目代码的一部分,应该是源代码控制的,但是自动生成它有时会导致意外中断签入。

所有其他文件都是生成合约和代理代码时使用的临时文件。它们一起构成了服务公开的元数据的总和,其中包括服务合同 (*.wsdl)、数据合同 (*.xsd) 和配置信息 (*.svcinfo)。

于 2012-10-17T15:43:33.007 回答
15

这些 xsd 文件只是您在创建或更新服务引用时刚刚使用的服务的元数据。您实际上可以删除它们,因为它们只是在生成参考文件时使用。无需对这些文件进行版本控制。

于 2010-03-15T03:51:30.923 回答