用于.NET 4.0的Svcutil.exe?
我正在尝试使用svcutil.exe为服务生成代理类,但是当我使用/reference
选项来引用为.NET 4.0构build的程序集时,出现错误。
无法加载文件或程序集或其某个依赖项。 此程序集由比当前加载的运行时更新的运行时构build,无法加载。
所以看来我使用的是旧版本的svcutil.exe。 我正在使用"C:\Program Files\Microsoft SDKs\Windows\v7.0A
这是我能find的最新版本。是否有更新的版本在我应该使用的地方?
我遇到过同样的问题。 如果您的项目设置为使用.NET 4.0 Framework,则必须select正确版本的SvcUtil.exe,否则将会出现错误:“无法加载…”
- 如果您查看“Microsoft SDKs \ Windows \ v6.0A \ Bin”,您将看到该exe文件的版本是“3.0.4506.2152”。
- “Microsoft SDKs \ Windows \ v7.0A \ Bin”中的SvcUtil.exe版本是完全相同的,所以它也抛出了一个循环。
但是, 有另一个版本的SvcUtil.exe位于“Microsoft SDKs \ Windows \ v7.0A \ Bin \ NETFX 4.0工具”,它是版本“4.0.30319.1”,如果您使用它,一切都应该工作。
.Net 4.0 SDK的最新版本可在
http://msdn.microsoft.com/en-us/windows/bb980924.aspx
驻留在v7.1 / bin中的 svcutil.exe具有版本3.0.4506.2152。
驻留在v7.1 / bin / NETFX 4.0 Tools中的 svcutil.exe版本为4.0.30319.1 。
根据这个.Net 4.0的链接,你应该使用C:\ Program Files \ Microsoft SDKs \ Windows \ v6.0 \ Bin中的一个。
http://msdn.microsoft.com/en-us/library/aa347733.aspx
但似乎有点奇怪,如果在v7.0A目录是太旧了。
为什么不重build为.NET 3.5来生成类? 我怀疑你正在生成类的types不依赖于任何.NET 4.0的function。 cs文件不会在乎构buildDLL的版本,所以你可以在4.0项目中使用它们。
我有同样的问题。
微软表示,你只能使用.Net 4 DLL与最新版本的.Net( http://msdn.microsoft.com/en-us/library/aa347733.aspx )新版本的SvcUtil,但该版本似乎成为上面提到的那个。 它不会访问.Net 4 DLL作为参考。
回答我自己的问题。 svcutil
的新版本可能会在6月中旬发布 的Windows SDK的v7.1 中提供 。
更新:util的最新版本不是v7.0按照:
Microsoft SDKs \ Windows \ v7.0A \ Bin \ NETFX 4.0工具
安装Visual Studio 2012(VS 2012)后,SvcUtil.exe v8.0A现在可用。
“C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0 Tools \ SvcUtil.exe”
您真正想要的是将WSDL文件转换为服务客户端的完整定义:
/n:*,MyCompany.Services.Client /out:IServiceInterface.cs ServiceDefinition.wsdl.xml
其中service definition.wsdl显然是来自任何旧的soap端点的?wsdl响应。
小黄人和巨魔记得! 一切都是现在的asynchronous,所以寻找和利用由SVCUtil.exe v8.0生成的新的asynchronous支持
- 用Dapper获取UTC时间作为UTC
- 为什么我不能在C#中捕捉到一个通用的exception?
- 列出<BusinessObject>或BusinessObjectCollection?
- MVC中UIHint属性的用法是什么
- 什么时候应该打开和closures连接到SQL Server
- .NET 4中的IDictionary <TKey,TValue>不是协变的
- 从Win XP以编程方式从C#中注销用户
- 是否有一个Linq方法添加一个单一的项目的IEnumerable <T>?
- 尝试方法'System.Web.Helpers.Json..cctor()'来访问方法'System.Web.Helpers.Json.CreateSerializer()'失败