我正在尝试在 WCF 中使用 .net 4 的发现。但无论我做什么,我都会得到这个不是很有用的例外:
System.ArgumentException 越过了本机/托管边界 消息=未找到接口。 源=mscorlib 堆栈跟踪: 在 System.RuntimeTypeHandle.VerifyInterfaceIsImplemented(RuntimeTypeHandle 句柄,RuntimeTypeHandle 接口句柄) 在 System.RuntimeType.GetInterfaceMap(类型 ifaceType) 在 Microsoft.VisualStudio.Diagnostics.ServiceModelSink.ServiceMethodResolver.ResolveMethodInfo(类型 implementationType,MethodInfo contractMethod) 在 Microsoft.VisualStudio.Diagnostics.ServiceModelSink.ServiceMethodResolver..ctor(ContractDescription 合同,DispatchRuntime 运行时,消息请求,InstanceContext instanceContext) 内部异常:
(堆栈跟踪实际上是空的。)
点击“继续”,程序会阻塞几秒钟,然后继续并显示正确的结果。即使在 Microsoft 提供的 WCF 示例中也会发生这种情况。我确保在 VS 2010 的异常窗口中只显示未处理的异常。
我不知道是什么原因造成的,特别是考虑到程序确实可以完美运行,除了由异常引起的短暂中断。
异常发生在每个使用 Discovery 的项目中,包括我创建的项目和 Microsoft 在官方 WCF 示例中提供的项目。它只发生在我的机器上,它在我同事的盒子上运行良好。
在我绝望中,我在http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/8e326b48-232c-4510-8194-aa9d4ba36829