Почему client.GetMessage застревает между ними?

Я пытаюсь загрузить невидимые электронные письма с поп-сервера. Я пытаюсь этот код (скопировано с официального сайта openPop.net)

public static List<OpenPop.Mime.Message> FetchUnseenMessages(string hostname, int port, bool useSsl, string username, string password, List<string> seenUids)
        {
            // The client disconnects from the server when being disposed
            using (Pop3Client client = new Pop3Client())
            {
                // Connect to the server
                client.Connect(hostname, port, useSsl);

                // Authenticate ourselves towards the server
                client.Authenticate(username, password,AuthenticationMethod.UsernameAndPassword);

                // Fetch all the current uids seen
                List<string> uids = client.GetMessageUids();

                // Create a list we can return with all new messages
                List<OpenPop.Mime.Message> newMessages = new List<OpenPop.Mime.Message>();

                // All the new messages not seen by the POP3 client
                for (int i = 0; i < uids.Count; i++)
                {
                    string currentUidOnServer = uids[i];
                    if (!seenUids.Contains(currentUidOnServer))
                    {
                        // We have not seen this message before.
                        // Download it and add this new uid to seen uids

                        // the uids list is in messageNumber order - meaning that the first
                        // uid in the list has messageNumber of 1, and the second has 
                        // messageNumber 2. Therefore we can fetch the message using
                        // i + 1 since messageNumber should be in range [1, messageCount]
                        OpenPop.Mime.Message unseenMessage = client.GetMessage(i + 1);

                        // Add the message to the new messages
                        newMessages.Add(unseenMessage);

                        // Add the uid to the seen uids, as it has now been seen
                        seenUids.Add(currentUidOnServer);
                    }
                }

                // Return our new found messages
                //client.Disconnect();
                return newMessages;
            }
        }

Когда я отладил этот код, я обнаружил, что код останавливается на

OpenPop.Mime.Message unseenMessage = client.GetMessage(i + 1);

И после этого никакие кнопки отладки не работают. Даже я нажимаю F10 тогда это ничего не делает.
Если я не отлаживаю код, пусть приложение запускается, то оно продолжает работать и никогда не выходит из цикла.
Что я здесь не так делаю? Спасибо

0 ответов

Другие вопросы по тегам