无法使用 vb.net 中的 Web 服务将我的数据上传到服务器

Posted

技术标签:

【中文标题】无法使用 vb.net 中的 Web 服务将我的数据上传到服务器【英文标题】:can't upload my data in server using Web Service in vb.net 【发布时间】:2018-05-16 03:50:35 【问题描述】:

由于内部错误,服务器无法处理请求。 有关错误的更多信息,请打开 IncludeExceptionDetailInFaults(来自 ServiceBehaviorAttribute 或从配置行为)在服务器上发送 异常信息返回给客户端,或者按照 Microsoft .NET Framework SDK 文档并检查服务器 跟踪日志。

如果问题出在服务器或系统中,我不知道

这是我的堆栈跟踪

System.ServiceModel.FaultException was unhandled
  HResult=-2146233087
  Message=The server was unable to process the request due to an internal error.  For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework SDK documentation and inspect the server trace logs.
  Source=mscorlib
  StackTrace:
    Server stack trace: 
       at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
       at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
       at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
       at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
       at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
       at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
    Exception rethrown at [0]: 
       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
       at JRS_Online_Apps_III.ServiceReferenceBilling.IService.RequestGenerateBill(String rclid, String ruserid, String rbrid, String rdatefrom, String rdateto, String rduedate, String careof, Int64[] rairbillsids, Decimal rNet, Decimal rRvat, Int32 rstatement, String bir)
       at JRS_Online_Apps_III.ServiceReferenceBilling.ServiceClient.RequestGenerateBill(String rclid, String ruserid, String rbrid, String rdatefrom, String rdateto, String rduedate, String careof, Int64[] rairbillsids, Decimal rNet, Decimal rRvat, Int32 rstatement, String bir) in C:\Users\REGIME\Desktop\New folder\JRS_Online_Apps_III\JRS_Online_Apps_III\Service References\ServiceReferenceBilling\Reference.vb:line 254
       at JRS_Online_Apps_III.CreateBillingForm.Button1_Click(Object sender, EventArgs e) in C:\Users\REGIME\Desktop\New folder\JRS_Online_Apps_III\JRS_Online_Apps_III\Billing\CreateBillingForm.vb:line 238
       at System.Windows.Forms.Control.OnClick(EventArgs e)
       at System.Windows.Forms.Button.OnClick(EventArgs e)
       at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
       at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
       at System.Windows.Forms.Control.WndProc(Message& m)
       at System.Windows.Forms.ButtonBase.WndProc(Message& m)
       at System.Windows.Forms.Button.WndProc(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
       at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
       at JRS_Online_Apps_III.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 81
       at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
       at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Threading.ThreadHelper.ThreadStart()
  InnerException:

如果我错了,请纠正我……alter 查询是否会破坏整个 数据库,有关系,因为我改变了表,但我忘了设置 向上约束和关系

我尝试将代码放在我的项目中,但运气不好,它总是给我错误 https://ibb.co/ccLfUb https://ibb.co/eTghsw

【问题讨论】:

错误消息告诉您如何获取更多信息。你做到了吗? 我认为它告诉我创建的 Web 服务有问题,我不知道如何修改它,因为我是这种错误的新手,而且该服务是由另一个程序员创建的不是我,所以我不知道如何修改它...顺便说一句,我刚刚聘请创建新程序但该系统当前正在使用然后发生错误我不知道该怎么做我只是检查服务器中的死锁但它是好的,我只是检查其他数据库,一切正常.. 如果您不知道如何做某事,请搜索有关如何做的信息。我觉得你甚至没有试图找出答案。您是否为 Google 的“IncludeExceptionDetailInFaults”或“ServiceBehaviorAttribute”而烦恼? 实际上我用谷歌搜索了它,我在 app.config 中发现 IncludeExceptionDetailInFaults = false 然后我尝试将其设置为 true 但没有任何反应,它只会将我重定向到错误,但我不知道应该是什么在那个错误中做。错误来自 Web 服务的变量,错误来自客户端 你读过this,这是我搜索“IncludeExceptionDetailInFaults”时的第一个匹配项吗? 【参考方案1】:

我的这个问题需要回答好几年了。

所以..这里的问题是Web Api 似乎是reconfigured(那时我是新手,以至于我不知道如何检查Web API 因为我只做离线基础应用程序不使用 Web API,现在我知道 API 是如何工作的,问题是旧程序员没有正确配置 API(顺便说一下,我只在该公司重新编程应用程序),

问题原因:

datatype-mismatch:从intnvarchar 这是唯一的问题。我只更改了一个列的数据类型,问题就消失了。

当您的连接超时时,您还可以考虑另一件事。我还使用Indexing 解决了这个问题。您可以将IncludeExceptionDetailInFaults = false 更改为true,这样您就可以看到遇到的错误。

【讨论】:

以上是关于无法使用 vb.net 中的 Web 服务将我的数据上传到服务器的主要内容,如果未能解决你的问题,请参考以下文章

使用多值 Web 服务,vb.net

System.Web.Services 无法添加到 Visual Studio 中的 VB.NET 项目中

从动态 htmlTable 获取 vb.net 中的数据

使用 vb.net 2010 锁定后端访问数据库中的表

Vb.net 如何以编程方式选择选项卡控件中的最后一个选项卡

处理 VB.NET 中的 varbinary 字段