未处理的System.NotImplementedException没有可用的源?

时间:2013-01-23 20:34:48

标签: c# visual-studio-2012 windows-phone-8 notimplementedexception

我不确定是否有人遇到过此问题。

我正在VS 2012中开发一个C#Windows Phone 8应用程序。

我最近收到类型为System.NotImplementedException的未处理异常。

尽管我的所有代码都包含在try / catch块中,并且没有方法存根会抛出一个notimplementedexception。

在输出中是:

MyAppName.DLL中出现“System.NotImplementedException”类型的第一次机会异常

MyAppName.DLL中出现“System.NotImplementedException”类型的异常,并且未在托管/本地边界之前处理

如果我点击“继续”继续调试,我会在VS中弹出一个错误消息:

System.Windows.ni.dll中出现未处理的“System.NotImplementedException”类型异常

如果我在这里选择“Break”,打开的堆栈跟踪会显示“No Source Available;调用堆栈只包含外部代码。此线程在调用堆栈上只有外部代码帧停止。

这是应用崩溃后突出显示的代码:

private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
    {
        if (Debugger.IsAttached)
        {
            // An unhandled exception has occurred; break into the debugger
            Debugger.Break();
        }
    }

编辑:这是堆栈:

Call stack with external code
System.Windows.ni.dll!MS.Internal.JoltHelper.OnUnhandledException(object sender, System.UnhandledExceptionEventArgs args)
mscorlib.ni.dll!System.Runtime.CompilerServices.AsyncMethodBuilderCore.ThrowAsync.AnonymousMethod_1(object state)
mscorlib.ni.dll!System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(object state)
mscorlib.ni.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.ni.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.ni.dll!System.Threading.QueueUserWorkItemCallback..System.Threading.|ThreadPoolWorkItem.ExecuteWorkItem()
mscorlib.ni.dll!System.Threading.ThreadPoolWorkQueue.Dispatch()
mscorlib.ni.dll!System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
[Native to Managed Transition]

1 个答案:

答案 0 :(得分:1)

对于有类似问题的人,我找到了明显的原因。

我已经移植了一些涉及Surface的Win8应用程序的文件输入/输出的代码,并且在其中一行中忽略了更改

StorageFolder storageFolder = KnownFolders.DocumentsLibrary;

到相应的

IsolatedStorageFile storageFolder = IsolatedStorageFile.GetUserStoreForApplication();

不知怎的,它没有在try / catch块中捕获,但是当我修复它时,不再发生未捕获的notimplementedexception。