我在服务器上部署了一个wcf webservice。如果出现异常,则错误消息的行为类似于从本地计算机执行代码。例如,以下错误消息表示存储实际代码的本地计算机文件夹。例如“C:\ initpub ...”。为什么我在服务器上收到此错误。有什么建议吗?
消息:对象引用未设置为对象的实例 跟踪:
服务器堆栈跟踪:
在
System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime 操作,ProxyRpc& RPC)在[0]处重新抛出异常:
在System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage retMsg)
在System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData,Int32类型)
在Domain.ExternalAccount.ExternalAccount.InsertExternalAccountWithPositions(ExternalAccountWithPositionsInParam) 请求)
在Domain.ExternalAccount.ExternalAccountClient.InsertExternalAccountWithPositions(ExternalAccountWithPositionsInParam) 请求)在 C:\的Inetpub \ wwwroot的\网站\安全\ finplanextsvc \ NaviplanExternalServices \域\ ExternalAccount.cs:行 3145
at NaviplanExternalServices.NaviplanExternalAccount.InsertExternalAccount(AccountType 中的acctType,ExternalPosition []位置) C:\ Inetpub \ wwwroot \ Site \ Secure \ finplanextsvc \ NaviplanExternalServices \ NaviplanExternalServices \ Services \ NaviplanExternalAccount.svc.cs:第178行
答案 0 :(得分:2)
原始源路径和行号存储在随应用程序一起构建的.pdb文件中。如果您还使用.dll部署.pdb,那么您将在堆栈跟踪中获取这些内容。这是默认的.net行为,如果在.dll或.exe旁边的deploy目录中有.pdb,实际上会使执行速度变慢。您可以通过不部署或删除.pdb文件来从错误消息中删除该详细信息。
答案 1 :(得分:1)
构建项目时,源文件位置将编译到.pdb中。它始终指的是构建它的源路径。