Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 更改一个类的服务接口是否需要更新所有类的服务引用?_.net_Wcf - Fatal编程技术网

.net 更改一个类的服务接口是否需要更新所有类的服务引用?

.net 更改一个类的服务接口是否需要更新所有类的服务引用?,.net,wcf,.net,Wcf,我相信我的问题的答案是否定的,但我想再核实一下 我有一个不久前写的WCF服务,现在在.NET4.0中,我正在用VS2010编辑它。解决方案的名称是Asicomon2,它有各种服务。svc类名为Checkout.svc、SelectClients.svc、MRU.svc等。我对MRU.svc服务及其接口做了一些必要的更改,我已经完成了这些更改。这些更改不会影响此解决方案中的任何其他服务。现在,回到MTS/COM+时代,像这样的任何更改都意味着整个解决方案Asicomon2在这种情况下将破坏二进制兼

我相信我的问题的答案是否定的,但我想再核实一下

我有一个不久前写的WCF服务,现在在.NET4.0中,我正在用VS2010编辑它。解决方案的名称是Asicomon2,它有各种服务。svc类名为Checkout.svc、SelectClients.svc、MRU.svc等。我对MRU.svc服务及其接口做了一些必要的更改,我已经完成了这些更改。这些更改不会影响此解决方案中的任何其他服务。现在,回到MTS/COM+时代,像这样的任何更改都意味着整个解决方案Asicomon2在这种情况下将破坏二进制兼容性,因此必须进行新的引用,等等。但是我想知道,对于使用Asicomon2的某些服务(而不是MRU.svc服务)的客户机,这是否是必要的?在VisualStudio项目中设置服务引用时,不要将其设置为ASIComon2;例如,将其设置为ASICommon2/Checkout.svc。所以,正如我所说的,我怀疑只要服务引用不是指向ASICommon2/MRU.svc,就不需要对服务进行必要的更改


我说的对吗?

如果您更改了公共依赖项中的某些内容,例如更改了所有服务通用的数据提供程序或实体,那么您必须更新其他内容的唯一原因


否则,如果更改严格隔离到MRU,那么这就是需要更新的全部内容

你说得对。其他服务的用户不受影响。唯一能破坏.svc用户的是当您更改合同模型、方法签名。。。。