System.dll中发生了'System.Net.WebException'类型的第一次机会异常

Onl*_*ere 3 c# debugging visual-studio-2010

我正在使用TweetSharp为用户查找关注者.

这是代码:

public static void FindFollowersForUser(TwitterUserModel twitterUser)
{
    try
    {
        var followers = service.ListFollowersOf(twitterUser.TwitterName, -1);
        if (followers == null) return;
        while (followers.NextCursor != null)
        {
            var foundFollowers = service.ListFollowersOf(twitterUser.TwitterName, (long)followers.NextCursor);
            if (foundFollowers == null) continue;

            Debug.WriteLine("Followers found for: " + twitterUser.TwitterName);
            foreach (var follower in foundFollowers)
            {
                twitterUser.Followers.Add(follower.ScreenName);
            }
        }
    }
    catch (WebException e)
    {
        throw e;
    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试在try/catch中包装代码,以捕获被触发的WebException错误并查看它的InnerException,但是尽管View -> Output在Visual Studio 的输出窗口()中显示了错误消息,但从未输入catch .

我怎么能看到这个突破bug的内在异常?这是我第一次看到调试器在触发异常时没有触发catch.

Pet*_*hie 12

我假设你说"第一次机会异常"是指输出到调试控制台的消息?无论何时抛出异常,都会输出该消息.该异常可能被代码捕获并被处理,并且不允许在堆栈中传播.TweetSharp可能会在其代码和处理中以某种方式捕获此异常,因此它永远不会到达您的catch

这是正常的,只有调试器才会显示此消息.如果这在某种程度上是您的问题(除了在"输出"窗口中显示的消息),请提供更多详细信息.