日期:2011-03-07  浏览次数:20510 次

脱机时签入文件


不可能在脱机时签入文件;因为您未连接到网络,签入命令未启用。这是故意设置的,这样可以在项目重新联机时方便地查看哪些文件在脱机时被签出。

进入联机状态


这与进入脱机状态基本上相同。若要使解决方案及其项目联机,请在“File”菜单上,单击“Source Control”,然后单击“Change Source Control...”。显示的对话框与进入脱机状态时相同。选择“Connected”即可使解决方案和项目联机。

同步更改


若要使脱机工作时所做的更改与 Visual SourceSafe 数据库中包含的解决方案和项目文件同步,需要从 Visual SourceSafe 中签出脱机工作时签出的每个文件,并将更改过的文件副本签入 Visual SourceSafe。
进入联机状态后,将对每个在脱机状态下签出的文件显示以下两个对话框:

图 10:协调断开连接状态下签出的文件
首先,单击“Check out”(如图 10 所示)。

图 11:从 Visual SourceSafe 签出文件
选择“Leave this file?”可防止您的修改被 Visual SourceSafe 中包含的版本覆盖。然后,需要签入您修改后的文件。
警告:如果其他人签入了此文件,然后您又签入了相同文件,则将覆盖其他人所作的变更。
注意:这些对话框仅对您在脱机状态下签出的文件显示,而不会对进入脱机状态之前已签出的文件显示。练习警告,如第一个对话框所指出的,可能会丢失数据。

您在脱机工作时,如果签出一个文件,而另一个团队成员也签出、修改和签入了同一文件,则必须非常谨慎,否则您的签入将覆盖该团队成员的修改。最安全的选择是避免脱机文件签出。总是在脱机前签出您要处理的文件。如果无法做到这一点,或您忘记了在脱机前签出了所有要处理的文件,则在同步更改时手动合并文件。
如果您在脱机工作时签出了一个文件,而另一个用户也签出了同一文件,则当您使解决方案和项目联机时,会显示以下对话框:

图 12:试图签出已签出的文件时显示的警告
单击“OK”。在 Solution Explorer 中,此文件旁会显示一个小警告符号,表示该文件仍需注意。
最后,如果您在脱机状态下将文件添加到项目,则使项目联机时,只需将新文件签入 Visual SourceSafe 即可。

提示与技巧

URL 一致


所有的开发人员最好使用统一的虚拟根目录,例如 http://localhost/projectName。尽量避免使用特定的服务器名称,因为这可能使用户难以共享项目文件。如果需要使用特定服务器名称,请在 web.config 文件内定义一个新的 <configSections>,并用它定义应用程序的自定义设置。如果您在使用 Web 引用,则将 Web 服务放在本地并使用 http://localhost/webServiceName 作为 Web 引用,或将 Web 引用 URL 行为设置为动态。动态 URL 行为将在稍后说明。

引用路径一致


将引用添加到一个非系统程序集时,IDE 会将程序集本地复制到项目(对于 Web 应用程序,程序集将被复制到 bin 目录)。若要控制程序集是否进行本地复制,请用鼠标右键单击程序集,然后单击“Propertities”。对于非系统程序集,“Copy Local”应设置为“True”。这是默认值,推荐在大多数情况下使用。
当添加引用时,IDE 还会更新用户项目文件内的引用路径,以指出程序集的实际位置。用鼠标右键单击项目,然后单击“Propertities”。单击“Common Properties”,然后单击“References Paths”。在对话框中(如图 13 所示),单击“Cancel”。

图 13:显示引用路径
尽管引用路径显示为项目的一个属性,实际上它对于设置了该属性的项目、计算机和用户来说是特有的。这就意味者,如果开发人员 1 将引用添加到程序集并签入了项目文件,则当开发人员 2 获得项目文件的最新版本时,程序集将显示在 Solution Explorer 内——但是生成很可能会失败,因为开发人员 2 可能不具有相同的引用路径。
要避免此问题,团队的所有开发人员应该在团队内部使用统一的引用路径。这样,只要符合以下条件,则某开发人员添加引用后其他开发人员就无需对解决方案或项目文件进行任何操作:
  • 引用路径已经设置,对每个项目任务只需设置一次
  • 引用的程序集已存在于硬盘上,并且位置正确

该方法要求定义一个标准的生成输出位置,并使所有的引用都引用该位置内的程序集。如果该条件太严格,可以在引用路径内包含用逗号分隔的多个路径。

添加 Web 引用


这也是 Visual Studio .NET Beta 2 相对于 Visual Studio .NET Beta 1 的改进之一。
在您的项目所在的文件夹内,存在一个 Web References 文件夹。添加 Web 引用时,会在 Web References 文件夹下创建一个新文件夹。该新文件夹根据托管 Web 服务的服务器命名,并包含 WSDL、DISCO 和生成的 Web 服务客户端代理。该文件夹名称还用作 Web 服务客户端代理的名称空间。
添加 Web 引用时,这些文件夹和文件将添加到 Visual SourceSafe 项目。更新 Web 引用时,还将签出、更新和签入这些文件。(用鼠标右键单击 Web 引用,然后单击“Update Web Referemce”。)
添加 Web 引用时,Web 服务 URL 在 Web 服务客户端代理内被硬编码。但是,可以更改 Web 服务客户端代理的行为,使它从 .config 文件读取 Web 服务 URL。请用鼠标右键单击 Web 引用,单击“Properties”,并将“URL Behavior”从“Static”更改为“Dynamic”。

图 14:Web 引用属性
下列代码将被添加到 .config 文件:
<configuration>    <appSettings>        <add key="WinApp1.localhost.Service1" 
        value="http://localhost/WebServiceTest/Service1.asmx" />    </appSettings></configuration><