所以我在发布模式下收到了来自我的UWP Windows应用程序的堆栈跟踪.我现在使用windbg将所有地址翻译成他们的方法名称.
我现在有这个输出:
System.InvalidOperationException: InvalidOperation_EnumFailedVersion. For
more information, visit http://go.microsoft.com/fwlink/?LinkId=623485
at MyApp!<BaseAddress>+0x7710b7
- MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.BeginInvoke+0x27
| (00b710c0) MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.Invoke
at MyApp!<BaseAddress>+0x771125
- MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.GetThunk+0x45
| (00b71130) MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.ReverseInvokeImpl
at MyApp!<BaseAddress>+0x7710d5
- MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.Invoke+0x15
| (00b710e0) MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.GetThunk
at MyApp!<BaseAddress>+0x85d8c9
- MyApp!$58_System::Net::Http::HttpContent::<>c__DisplayClass0.<ReadAsStringAsync>b__1$catch$0+0x16
| (00c5d8f2) MyApp!$58_System::Net::Http::HttpContent::<>c__DisplayClass0.<ReadAsStringAsync>b__1$catch$1
at MyApp.Collections.ViewModelCollection.<PrependListOfViewModelsAsync>b__24_1(ViewModels.ViewModel nt)
at MyApp!<BaseAddress>+0x784241
- MyApp!$45_System::Collections::Generic::Dictionary$2<$76_Microsoft::CSharp::RuntimeBinder::Syntax::OperatorKind,System::__Canon>.Remove+0x81
| (00b84310) MyApp!$45_System::Collections::Generic::Dictionary$2<$76_Microsoft::CSharp::RuntimeBinder::Syntax::OperatorKind,System::__Canon>.Resize
at MyApp!<BaseAddress>+0x786623
- MyApp!$45_System::Collections::Generic::Dictionary$2<$54_Newtonsoft::Json::Serialization::DefaultSerializationBinder::TypeNameKey,System::__Canon>.Remove+0x3
| (00b86790) MyApp!$45_System::Collections::Generic::Dictionary$2<$54_Newtonsoft::Json::Serialization::DefaultSerializationBinder::TypeNameKey,System::__Canon>.Resize
at MyApp!<BaseAddress>+0x7e41af
- MyApp!$62_System::Linq::Expressions::ConditionalExpression.Make+0x3f
| (00be4250) MyApp!$47_Internal::Reflection::Execution::FoundationTypesImplementation.get_SystemObject
at System.Collections.Generic.List<System.Object>..ctor(Collections.Generic.IEnumerable<System.Object> collection)
at MyApp.Collections.ViewModelCollection.<>c__DisplayClass24_0.<PrependListOfViewModelsAsync>b__0()
at System.Action.Invoke()
at MyApp!<BaseAddress>+0xcbb04f
- MyApp!$121_Type23.ReadArrayOfUrlEntityFromXml+0x1cf
| (010bb1a0) MyApp!$121_Type16.ReadArrayOfMediaFromXmlIsGetOnly
at MyApp!<BaseAddress>+0xdb9c41 --- End …Run Code Online (Sandbox Code Playgroud) 我试图找出一种方法来调试我在Azure的应用程序洞察中收到的异常.我是这种类型的调试的新手,因为我只是在Visual Studio中处理错误,而Visual Studio正在运行一个活动的调试器.但是,对于Application Insights,存在空引用异常,这些异常仅提供调用堆栈,并且没有有用的异常消息.
例外消息: Arg_NullReferenceException
调用堆栈:at SharedLibrary!<BaseAddress>+0x68d4c5
--- End of stack trace from previous location where exception was thrown ---
at SharedLibrary!<BaseAddress>+0x329115
at SharedLibrary!<BaseAddress>+0x329207
at SharedLibrary!<BaseAddress>+0x34d603
其他例外有消息,例如Excep_FromHResult 0x800455A0,其他人实际上显示他们追溯到的方法.
有没有办法找到解密callstack或Base Address或HResult这些异常的来源?
这对于消除我的应用中的错误非常有用.
我已经开发了使用EF7和SQLite的简单小型通用Windows应用程序。它编译和运行平稳的时候可以选择“编译.NET本地工具链”是未经检查。
如果我选中 “使用.NET本机工具链编译”选项,则会收到以下编译错误:
错误类型'System.MarshalByRefObject'未包括在编译中,但在类型'Microsoft.Data.Entity.Design.OperationExecutor'中被引用。可能缺少一个程序集。
在此之后,还有很多其他错误,但是我相信解决该错误也将解决其余问题。
有谁知道如何解决这个问题?