- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图通过命令行生成我的解决方案的服务引用,所以我一直在尝试使用 svcutil 来完成。我有两个问题。
在 Visual Studio 2012 中,我可以指定 System.Array 集合类型和 System.Collections.Generic.Dictionary 字典集合类型。 svcutil中只有一个collectionType选项,如何指定两种集合类型?
在 Visual Studio 2012 中,我可以选择在引用的程序集中重用类型。然后我可以选择在所有引用的程序集中重用类型。有没有一种方法可以指示 svcutil 重用解决方案中的所有类型,或者甚至有一种方法可以让我列出多个程序集以重用其中的类型?
额外细节:我的项目是一个 silverlight 项目。我有很多程序集,但我不确定重用了哪些类型以及在何处重用。字典类型转换为字典,所有其他集合类型转换为 System.Array。
这是我目前使用命令行而不是 Visual Studio 2012 重现我的 Reference.cs 文件的尝试:
SvcUtil.exe /target:code "myMexServiceAddress" /language:cs /out:Reference.cs /noConfig /async /collectionType:System.Array /serializable /serializer:Auto /enableDataBinding /namespace:*,myNamespace
编辑:我目前正在通过 Visual Studio 2012 成功生成我的服务引用,但我需要能够通过命令行生成它们。这是我未能做到的地方。
UPDATE1: 所以我解决了问题 2。您只需将/r:assembly.dll/r:assembly2.dll/r:assembly3.dll 添加到 svcutil 中,使其重用类型那些大会。必须手动将路径添加到所需的所有程序集有点烦人,但没有办法让它自动使用项目引用中的所有类型,就像在 Visual Studio 中一样。
更新 2:要在代码中生成 Silverlight 5 服务引用和可移植库服务引用,您需要使用 SLSvcUtil.exe 而不是 SvcUtil.exe:
SLSvcUtil.exe "myMexServiceAddress" /out:Reference.cs /language:cs /enableDataBinding /namespace:*,myNamespace /serializer:Auto /config:ServiceReference.config
我仍然不知道如何指定两种类型的集合,一种用于字典,一种用于其他集合类型。有什么想法吗?
最佳答案
以防万一有人在 2022 年寻找答案。新工具是 dotnet-svcutil
安装:
dotnet tool install --global dotnet-svcutil
要使用多个集合,请多次使用 --collectionType
或更简单的 -ct
dotnet-svcutil "myMexServiceAddress" -ct System.Collections.Generic.List`1 -ct System.Collections.Generic.Dictionary`2
Postdata:如果在 Powershell 上运行,将 `1 转义为 ``1
关于c# - 如何在 svcutil 中重用所有程序集类型并指定字典集合类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20430216/
我是一名优秀的程序员,十分优秀!