Контекст ошибки:
Visual Studio 2010 с пакетом обновления 1 (SP1) ASP.NET MVC 3 Приложение IE9 с включенной отладкой сценариев для Internet Explorer
Условия ошибки:
Выполнение останавливается в intфайл JavaScript с именем «script block [dynamic]» в следующей строке
doc.addEventListener("DOMNodeInserted", onDOMNodeInserted, false);
, в которую строка кода вложена в следующую строку, если block
if (ver >= 9.0)
{
doc.addEventListener("DOMNodeInserted", onDOMNodeInserted, false);
doc.addEventListener("DOMNodeInsertedIntoDocument", onDOMNodeInsertedIntoDocument, false);
}
Это очень постоянная ошибкаэто начало происходить после того, как я заново изобразил свой жесткий диск и переустановил VS 2010 SP1 и ASP.NET MVC 3. Я сделал это дважды, чтобы убедиться, что все сделал правильно.
Я собираюсь сделать предположение и предложитьчто эта ошибка является побочным эффектом необработанного исключения в ASP.NET MVC 3 или ошибки в IE9.Кажется, ошибка возникает, когда не удается найти метод действия (GET?), Указанный в вспомогательном методе ActionLink HTML, например
@Html.ActionLink("Link Text", "Action")
. Я считаю, что IE9 поддерживает addEventListener, поэтому сама ошибка неверна.Если я не смогу получить больше информации, эта ошибка не в силах устранить причину.Я могу предотвратить это, убедившись, что мой метод действия существует и что он работает.Это обходной путь, а не исправление.Исправление ошибки предотвратит ошибочное сообщение о ней, потому что IE9 фактически поддерживает addEventListener.