我是分布式开发团队的一员。我们都通过终端服务工作,访问我们的应用程序所在的远程服务器。 我们正在开发一个项目,其中客户端应用程序使用WCF服务,该服务公开了所有业务逻辑功能。
在我们的开发过程中,开发人员经常被要求开发从用户界面到数据库访问的整个用例,包括服务和业务逻辑。 在这种情况下,开发人员必须能够调试服务器端针对给定用例构建的功能/方法。问题是必须运行服务,当另一个开发人员需要调试他/她的工作时,会抛出异常(我认为'AddressAlreadyInUseException'不确定)并且第二个开发人员无法执行任何类型的调试服务。即使我们(当然)有不同的Windows用户名,因此我们正在不同的会话中工作。
客户端应用仍然可以。继续使用'原始'服务实例,因为我们在服务中捕获异常,但是不可能进行调试。如果第一个开发人员停止了wcf服务,那么应用程序。失败。
我想知道您是否可以为我们提出任何建议。我可以使用某种工具(即使我们必须为此付费),它可以以某种方式隔离服务器上的每个开发人员的工作空间......或者我们只需要改变工作方式。
我会非常感谢任何建议或线索。 最好的问候,
的Gonzalo
答案 0 :(得分:0)
我建议每个开发人员都有自己的服务器服务副本。
当我们开发时,每个开发人员在他们的机器上都有一个完整的环境。完成后,它们将被签入版本控制系统。当其他开发人员获得最新版本时,新功能将扩展到其他开发人员。
如果我理解您的设置,所有开发人员都在针对同一台服务器,在这种情况下,一个开发人员的编程错误将停止所有开发。
答案 1 :(得分:0)
嘿伙计,调试器通过IP通信连接。这意味着如果服务或进程绑定侦听器,则其他任何服务或进程都不能再次绑定此IP端口。
这就是抛出异常的原因。
在Citrix中,您具有虚拟IP配置。 您还可以考虑在仅为一个开发人员提供服务的服务器上放置VM。这也可以解决这个问题