在Visual Studio调试器空我有一个很奇怪的问题:投仅在某些计算机
object aObject = LoadObject();
MessageBox.show(aObject.GetType().Name) //box shows "Action"
Action aAction = aObject as Action;
如果我这样做,在代码调试,aAction为空。 如果我在某处做出断点并在Visual Studio的直接输入字段中编写(aObject as Action).Id我得到正确的值(不为空)。
如果我从bin/debug文件夹运行exe文件,它可以工作...转换完成并且aAction不为空。
这到底是什么错误?
如果你使用调试器,你可以看到底层类型真的是 – Jonesopolis
你使用多线程吗?因为这通常是调试与否之间存在这种差异的原因。无论如何,不知道LoadObject是什么,我可以做的不多 - aObject在加载后是否有价值? – gilmishal
什么是GetType()。FullName?你的Action与返回的对象有什么不同?调试器表达式评估引擎中存在一些错误,这些错误在VS2015中再次发生了变化,现在又有其他一些错误。你不应该相信100%你在调试器中看到的值。 –