【发布时间】:2014-12-18 11:19:05
【问题描述】:
所以我正在用 F# 在 winforms 中做一个简单的个人项目。我的代码曾经可以工作,但现在似乎无缘无故地抛出了这个异常。
An unhandled exception of type 'System.InvalidOperationException' occurred in FSharp.Core.dll
Additional information: The initialization of an object or value resulted in an object or value being accessed recursively before it was fully initialized.
代码是一个成员方法,被表单本身的构造函数调用
do
//lots of other constructor code before this point
// render the form
form.ResumeLayout(false)
form.PerformLayout()
form.ReloadGoals
//several other members before here
member form.ReloadGoals =
let x = 10 //crashes on this line
我为我正在使用的项目获取模板的网站是this one。 不幸的是,我对此做了一些实质性的补充。
我很乐意发布更多代码,但我需要确切知道哪些代码是相关的,因为我不确定,也不想在无关代码中陷入困境。
我也找不到很多关于 System.InvalidOperationException 的文档。 每次我找到它时,它都被用作异常you can throw on your own 的an example,而不是导致它的原因。
【问题讨论】:
-
我很欣赏这个想法。我没有从构造函数调用的任何虚拟方法。它们都已实施。即使有些是以 () 作为方法主体的占位符。
-
在构造函数代码中,您是否将
form传递给您类型的任何其他构造函数?这可能会导致您看到的异常。
标签: winforms f# invalidoperationexception