我正试图让我的设备与托管在Azure中的WCF服务一起工作,因此我遵循了http://msdn.microsoft.com/en-us/magazine/gg232761.aspx一篇文章,该文章向我展示了如何做到这一点。
当我试图运行MFSvcUtil.exe来生成代理代码时,我遇到了问题,所以我可以在设备端从NETMF访问WCF服务方法。
如果我想跑
C:\Program Files (x86)\Microsoft .NET Micro Framework\v4.1\Tools\MFSvcUtil.exe" http://myservice.cloudapp.net/TrackingService.svc?singlewsdl /V我得到了这个输出:
**MfSvcUtil.exe (c) Microsoft 2008
Reading WSDL file: http://myservice.cloudapp.net/TrackingService.svc?singlewsdl
Could not find schema information for the element 'HTML'.
Severity: Warning
Exception: System.Xml.Schema.XmlSchemaValidationException: Could not find schema information for the element 'HTML'.
SourceUri: http://myservice.cloudapp.net/TrackingService.svc?singlewsdl
LineNumber: 1
Position: 2
StackTrace:
Program Error: The WSDL file is not compatible.**现在,如果我尝试使用常规的WSDL文件运行,如
MFSvcUtil.exe" http://myservice.cloudapp.net/TrackingService.svc?WSDL /V我得到这个输出,后面跟着一个无法找到堆栈跟踪的StackOverflowException,请参阅http://localhostr.com/file/QCEVawT/log.txt (由于字符的限制而上传)。
这是我的完整WSDL:http://pastebin.com/M9KVYD0e
我该如何解决这个问题?
发布于 2012-04-19 07:30:19
我想知道你是否在使用.NET 4.5。singlewsdl选项是.NET 4.5中的一个新特性,但默认情况下,Windows还没有安装.NET 4.5。如果您想使用.NET 4,请使用?wsdl而不是?singlewsdl。
此外,还请确保您有useRequestHeadersForMetadataAddress行为,否则WSDL可能无法像预期的那样工作。您可以查看http://support.microsoft.com/kb/971842以获得更多信息。但是不需要安装修补程序,因为这个特性已经内置到.NET 4中了。
https://stackoverflow.com/questions/10220382
复制相似问题