.NET的发行说明/历史记录?BeginInvoke的问题

.NET的发行说明/历史记录?BeginInvoke的问题,.net,wpf,.net,Wpf,我们有一些代码在两个.NET版本中表现不同: *3.0.30618(最新的.NET 3.0版本) *3.0.04506(.NET 3.0 RTM) 它在RTM版本中不起作用。我们将问题追溯到调用system.windows.threading.dispatcher.BeginInvoke。该代理已通过,但从未运行 解决此问题的任何提示或建议?RTM是该框架的早期版本。这意味着它不是完全稳定的,而且极有可能这是一个bug。考虑到.NET3.0在发行版中已经存在了多长时间,我对解决这个“问题”的建议

我们有一些代码在两个.NET版本中表现不同: *3.0.30618(最新的.NET 3.0版本) *3.0.04506(.NET 3.0 RTM)

它在RTM版本中不起作用。我们将问题追溯到调用system.windows.threading.dispatcher.BeginInvoke。该代理已通过,但从未运行

解决此问题的任何提示或建议?

RTM是该框架的早期版本。这意味着它不是完全稳定的,而且极有可能这是一个bug。考虑到.NET3.0在发行版中已经存在了多长时间,我对解决这个“问题”的建议是非常简单地更新.NET

忽略这一点,但我将保留答案本身,以便保留注释。

我强烈怀疑这是代码中的某个错误,即使它与原始.NET 3.0和更高版本有所不同

我建议您像处理任何其他问题一样处理它:将代码缩减到最低限度以显示问题。然后应该比较清楚这是框架错误还是您自己的代码中的错误。

发现了问题

对于.NET 3.0(3.0.04506),BeginInvoke具有以下重载:

  • 调度员。开始呼叫(调度员优先, 代表)
  • 调度员。开始呼叫(调度员优先, 代表、对象)
  • 调度员。开始呼叫(调度员优先, 委托、对象、对象[]) 对于3.0 SP2(3.0.30618),添加了以下内容


  • Dispatcher.BeginInvoke(委托,对象[])<我的错误。我不知道它代表什么,谷歌也没有特别的帮助,除了一些与betas相关的参考文献。发现了问题(我发布了答案)。现在这个bug在我们的代码中的某个地方,一个异常被悄悄地处理了(喘息!)。我不明白为什么你会得到一个MissingMethodException。。。方法仍然存在,不是吗?令人困惑的是,“旧”重载并没有出现在我的脱机MSDN中……该方法不适用于.NET的RTM版本。这就是委托未运行的环境。