我正在将.NET 4.0 IIS托管的WCF服务升级到VS15和.NET 4.6。当我导航到http://server/service.svc因为OperationContext.Current为null时,我注意到我的服务在4.6下爆炸了。经过一些调试后,我注意到在我的.NET 4.0解决方案中,当通过浏览器导航到wsdl时,实际上并没有实例化服务,因此代码永远不会出现。在4.6下,似乎服务被实例化。显而易见的解决方案是检查OperationContext.Current是否为null,我只是想知道是否我错过了更大的东西。
简而言之,由于框架的两个版本之间发生了一些变化,预计会出现这两种行为吗?