【问题标题】:Exception has been thrown by the target of an invocation - vb.net调用的目标已引发异常 - vb.net
【发布时间】:2014-06-02 19:18:47
【问题描述】:

我收到错误消息“异常已被调用的目标抛出。我有 new 关键字。我确保 ReportsData_Employee.COATSEndAssignmentDataTable 存在。

    Imports System.Windows.Forms
    Imports Advance.Extensions.Reporting
    Imports CrystalDecisions.Shared
    Imports Advance.Common.Reporting
    Imports System.IO

    Public Class Activity_EndAssignmentTool
        ReadOnly _dt As New DataTable
        Dim _dts As New DataTable
        Dim _bldts As New DataTable
        Dim _xml_file_name_creation As String
    '// This is the line that is causing the error ============
        ReadOnly _xml_datatable As ReportsData_Employee.COATSEndAssignmentDataTable = New ReportsData_Employee.COATSEndAssignmentDataTable()
    '//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

   ====================================================================================== 

   System.Reflection.TargetInvocationException was caught
   HResult=-2146232828
   Message=Exception has been thrown by the target of an invocation.
   Source=mscorlib
   StackTrace:
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly,        Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Reflection.Assembly.CreateInstance(String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Reflection.Assembly.CreateInstance(String typeName)
   at Advance.Extensions.Activities.Activity_Form.GetActivityForm(String className) in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Forms\Activity_Form.vb:line 126
   at Advance.Extensions.Activities.Activity_Form.SetActivityClass() in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Forms\Activity_Form.vb:line 60
   InnerException: System.NullReferenceException
   HResult=-2147467261
   Message=Object reference not set to an instance of an object.
   Source=Advance.Extensions.Activities
   StackTrace:
   at Advance.Extensions.Activities.Activity_EndAssignmentTool.InitializeComponent() in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Activity_Forms\Activity_EndAssignmentTool.Designer.vb:line 479
   at Advance.Extensions.Activities.Activity_EndAssignmentTool..ctor() in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Activity_Forms\Activity_EndAssignmentTool.vb:line 12
   InnerException: 

有人能说出我收到此错误的其他原因吗?我查看了多个链接,但很多答案不适用于我的情况。

"Exception has been thrown by the target of an invocation" error (mscorlib)

仅供参考,我已尝试ReadOnly _xml_datatable as New ReportsData_Employee.COATSEndASsignmentDataTable(),但仍然存在问题。

感谢任何帮助。如果您需要任何其他信息,请告诉我。

谢谢。

【问题讨论】:

标签: vb.net runtime-error


【解决方案1】:

你没有正确初始化对象。这里...

ReadOnly _xml_datatable As ReportsData_Employee.COATSEndAssignmentDataTable = New ReportsData_Employee.COATSEndAssignmentDataTable()

应该是

Private ReadOnly _xml_datatable As New ReportsData_Employee.COATSEndAssignmentDataTable()

你真正的问题是

 InnerException: System.NullReferenceException
 HResult=-2147467261
 Message=Object reference not set to an instance of an object.
 Source=Advance.Extensions.Activities

您需要查看COATSEndAssignmentDataTable 的构造函数。你有NullReferenceException 在那里。这两行告诉你确切的位置

at Advance.Extensions.Activities.Activity_EndAssignmentTool.InitializeComponent()
in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Activity_Forms\Activity_EndAssignmentTool.Designer.vb:line 479

at Advance.Extensions.Activities.Activity_EndAssignmentTool..ctor() 
in C:\Users\JJanssen\Documents\Visual Studio 2010\Projects\Legacy\Advance Extensions\advance.extensions.activities\Activity_Forms\Activity_EndAssignmentTool.vb:line 12

【讨论】:

  • 无论我是否设置了Private,此更改仍然无法正常工作。我仍然收到同样的错误。
  • Private ReadOnly _xml_datatable As New ReportsData_Employee.COATSEndAssignmentDataTable() 仍然产生同样的错误。
  • @JohnJanssen 您需要查看COATSEndAssignmentDataTable 的构造函数。你有NullReferenceException在那里
  • 非常有趣。我的设计师中已经存在多年的.EndInit() 抛出了异常。感谢您分析堆栈跟踪。
  • @JohnJanssen 没问题。希望您尽快解决。
猜你喜欢
  • 2019-01-22
  • 2018-11-08
  • 2018-02-14
  • 1970-01-01
  • 2016-03-30
  • 1970-01-01
  • 1970-01-01
  • 2021-12-27
  • 2011-12-15
相关资源
最近更新 更多