Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.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
C# svcutil.exe更新服务引用_C#_Svcutil.exe - Fatal编程技术网

C# svcutil.exe更新服务引用

C# svcutil.exe更新服务引用,c#,svcutil.exe,C#,Svcutil.exe,我正在使用一个引用多个服务的解决方案。一个接一个地更新所有服务非常耗时,可能会导致疏忽。有人问我是否可以找到一种方法,在构建时通过svcutil自动更新所有引用 我的工作是使用服务的端点生成一个类,但它不会更新项目中的引用,也不会生成所有其他文件,如*.xsd 我尝试了几个语法,让它像这样在.csproj中工作 <Target Name="AfterBuild"> <Message Text="Updating Web Reference..."/>

我正在使用一个引用多个服务的解决方案。一个接一个地更新所有服务非常耗时,可能会导致疏忽。有人问我是否可以找到一种方法,在构建时通过svcutil自动更新所有引用

我的工作是使用服务的端点生成一个类,但它不会更新项目中的引用,也不会生成所有其他文件,如*.xsd

我尝试了几个语法,让它像这样在.csproj中工作

<Target Name="AfterBuild"> 
    <Message Text="Updating Web Reference..."/> 
    <Exec Command="&quot;{pathToSvcutil}\svcutil.exe&quot; &quot;{urlToServiceEndpoint}&quot; /out:&quot;{SomeLocalPath}\Test.cs&quot; /n:&quot;*,{MyNamespace}&quot;"/> 
</Target>

但我不确定/n在我的情况下是否非常有用,或者我是否需要/out参数(使用它是因为构建成功,但似乎没有任何变化)

另外一点:我计划对我必须更新的每项服务都使用这个命令,但是还有更优雅的方法吗

非常感谢


编辑:我不知道我是否足够准确,所以我真正想要的是拥有与我单击服务引用并按“更新”时完全相同的行为。

该工具使用的代码与Visual Studio不同。VS能够处理更多的边缘情况。至于更新,那只是重新生成相同的自动生成的代理类。您可以使用最初用于生成代理的相同命令行。但是,这是在构建之前应该做的事情,否则编译器将永远看不到更新的类。在构建之前生成唯一的代理类是否足以对解决方案应用任何服务更改?我看不出这样做的目的。如果服务web方法发生变化,您仍然能够以某种方式调用它们吗?我们控制着服务,而且它是一个小型it团队,因此我们知道当发生变化并且客户机正常工作时,这只是为了腾出一些时间