Coo*_*ker 8 c# web-services webservice-client
我有一组相关的Web服务,它们在它们之间共享某些类型,特别是TokenService生成的“令牌”。
在Visual Studio中使用“添加引用”时,将生成代理类,并且每个Web服务都将复制许多类(例如Token类)。
为了解决这个问题,我编写了以下powershell脚本来为可重复使用类型的Web服务生成.cs文件。
$svcutil = get-item ((get-item 'Env:\ProgramFiles(x86)').Value + "\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\svcutil.exe")
$csc = "C:\Program Files (x86)\MSBuild\14.0\Bin\csc.exe"
& $svcutil "http://Path/to/WebService/WSTokenService?wsdl" /o:WSTokenService.cs
& $csc /target:library /out:temp.dll WSTokenService.cs
& $svcutil "http://Path/to/WebService/WSAssetService?wsdl" /r:temp.dll /o:WSAssetService.cs
& $csc /target:library /out:temp.dll WSTokenService.cs WSAssetService.cs
& $svcutil "http://Path/to/WebService/WSContactService?wsdl" /r:temp.dll /o:WSContactService.cs
& $csc /target:library /out:temp.dll WSTokenService.cs WSAssetService.cs WSContactService.cs
..
repeat for 8 webservices
Run Code Online (Sandbox Code Playgroud)
这将Web服务“链接”在一起,重新使用共享的类,并且似乎可以正常工作。
这种方法是否有问题,和/或是否有更好的方法来实现相关Web服务之间的共享类?
编辑:请注意,这些不是我们开发的Web服务,我们无权访问服务器端使用的代码或类。
| 归档时间: |
|
| 查看次数: |
237 次 |
| 最近记录: |