У меня есть приложение С#, в котором я получаю эту ошибку:
"Оценка функции отключена, потому что предыдущая оценка функции завершена. Вы должны продолжить выполнение для повторной оценки функции.
Я видел много сообщений, связанных с этой ошибкой в stackoverflow и msdn, но не нашел решения. Большинство людей говорят, что эта ошибка возникает в многопоточном приложении и может быть устранена путем удаления всех точек останова. В моем случае мое приложение однопоточное, и я удалил все точки останова, но все же я получаю эту ошибку при отладке приложения. Когда я запускаю приложение. без отладки, мое приложение просто зависает, и я должен остановить его через визуальную студию. Я попытался найти код, где его повесить, и я нашел линию, где он повесился. Вот фрагмент кода:
MatchCollection matchesFound = Regex.Matches(content,
keywordPattern,
RegexOptions.Multiline);
int matchCount = matchesFound.Count;
Когда выполнение выполняется во второй строке, то есть когда код пытается получить значение свойства Count, мое приложение зависает. Мое регулярное выражение прекрасно, поскольку я тестировал его в Expresso, и я уверен, что приложение не получает повешение при выполнении метода Matches(). Если я прихожу к этой линии путем отладки, я получаю вышеупомянутую ошибку. Кто-нибудь знает, почему возникает эта ошибка и как ее решить?
Я использую Visual Studio 2005.