我知道您不能,也不能序列化SQL连接。但是我有一个问题,即我们的生产和开发服务器上的相同代码占优势,而我们的生产Web服务工作正常,而我们的开发机器失败(以及我的本地开发机器)。
我得到的错误是:
ExceptionDetail,可能由。创建 IncludeExceptionDetailInFaults = true,其值为: System.InvalidOperationException:调用时抛出异常 WSDL导出扩展: System.ServiceModel.Description.DataContractSerializerOperationBehavior 合同:http://tempuri.org/:IWFHandlerService ----> System.Runtime.Serialization.InvalidDataContractException:Type 'System.Data.SqlClient.SqlCredential'无法序列化。考虑 使用DataContractAttribute属性标记它,并标记所有 要使用DataMemberAttribute序列化的成员数 属性。如果类型是集合,请考虑使用 CollectionDataContractAttribute。请参阅Microsoft .NET Framework 其他支持类型的文档。在 System.Runtime.Serialization.DataContract.DataContractCriticalHelper.ThrowInvalidDataContractException(字符串 消息,类型类型)...
我的源代码中包含以下方法:
Public Function GetCentralConnection() As SqlClient.SqlConnection Implements IWFHandlerService.GetCentralConnection
Dim conn As New SqlClient.SqlConnection(My.Settings.MDISCentralConnection)
Return conn
End Function
当我从生产Web服务查看WSDL时,我可以清楚地看到GetCentralConnection方法可供我使用。
如果我们可以开始一个对话框来开始寻找可能的解决方案,但我最后还不清楚为什么这项服务不能在不同的Web服务器上运行。