如何使用dotnet-svcutil更新WSDL服务引用?
解决WSDL服务更新及dotnet-svcutil使用问题
执行路径
直接在项目根目录(包含项目.csproj文件的目录)下打开CMD执行命令即可,dotnet工具会自动识别项目配置。
具体命令
1. 先确保安装dotnet-svcutil工具(未安装时执行)
dotnet tool install --global dotnet-svcutil
2. 生成符合旧配置的服务引用命令
dotnet svcutil http://127.0.0.1:8080/DeliveryService/?Wsdl ^ --collection-types "System.Array,System.Collections.Generic.Dictionary`2" ^ --namespace "*:DeliveryService" ^ --sync ^ --target-framework netstandard2.0 ^ --type-reuse-mode All ^ --output-dir "ServiceReferences/DeliveryService"
注:Windows CMD环境换行用
^;PowerShell环境换行用反引号。
参数对应旧配置说明
--collection-types:对应旧配置的collectionTypes,指定生成代码使用的集合类型--namespace "*:DeliveryService":对应旧配置的namespaceMappings,将WSDL所有命名空间映射到本地DeliveryService命名空间--sync:对应旧配置的sync: true,生成同步调用方法--target-framework netstandard2.0:对应旧配置的targetFramework,适配项目目标框架--type-reuse-mode All:对应旧配置的typeReuseMode,复用所有可复用的类型定义--output-dir:指定服务引用生成到项目内的指定目录,避免文件散落在根目录(可根据你的实际项目结构调整路径)
执行完成后,检查生成的文件,并将自动生成的配置(如绑定、端点信息)合并到项目的配置文件中即可。
内容的提问来源于stack exchange,提问作者Elgate
相关产品推荐
相关产品推荐

