在try-catch块中获取意外的崩溃报告

时间:2016-07-22 09:05:10

标签: c# windows-10 windows-mobile uwp hockeyapp

我使用 HockeyApp 为我的应用收集崩溃数据,但出于某种原因,它并没有提供堆栈跟踪。

我所拥有的是这样的:

MyNamespace!<BaseAddress>+0x5d1287 
MyNamespace!<BaseAddress>+0x5f18d5 
MyNamespace!<BaseAddress>+0x5f1827 
Microsoft.HockeyApp.Extensibility.Windows.UnhandledExceptionTelemetryModule.CoreApplication_UnhandledErrorDetected(Object sender, ApplicationModel.Core.UnhandledErrorDetectedEventArgs e) 

所以很难找出发生了什么。

异常消息很有用,正如它所说的

  

找不到元素。无法在Vault中找到凭据

并且只有一个地方我使用PasswordVault

这里的问题是我在try / catch块中使用它,所以我真的不明白为什么我收到此报告,我甚至无法复制它

这是完整的PasswordVaultService课程,因此您可以准确了解我正在做的事情。

public class PasswordVaultService
{
    private static readonly PasswordVault Vault = new PasswordVault();

    public static string RetrieveSecret(Entry entry)
    {
        try
        {
            var results = Vault.FindAllByResource(entry.Name);
            if (results.Count == 0) return null;
            var result = results[0];
            result.RetrievePassword();
            return result.Password;
        }
        catch (Exception)
        {
            return null;
        }
    }

    public static void StoreSecret(Entry entry, string secret)
    {
        Vault.Add(new PasswordCredential(entry.Name, entry.Name, secret));
    }

    public static void DeleteSecret(Entry entry)
    {
        var results = Vault.FindAllByResource(entry.Name);
        if (results.Count == 0) return;
        var result = results[0];
        Vault.Remove(result);
    }

}

我已经有一段时间没有收到此错误了,而且我不明白发生了什么,因为课程非常简单。在发布之前,我甚至在项目中搜索了 Vault ,这是我唯一使用PasswordVault的地方。

0 个答案:

没有答案