Я нашел другое решение проблемы на тот случай, если кто-то его ищет. Я использовал javascript для переопределения функции OnSubmit формы, таким образом перехватывая исключение, вызвавшее проблему, и продолжая работу с остальным кодом.
Однако решение является своего рода «взломом», поскольку оно охватывает не все ситуации. Я нашел решение на форуме FreeTextBox и опробовал его, и оно работает. Единственное отличие в моем коде состоит в том, что я возвращаю true в конце функции переопределения:
function OvrdSubmit()
{
var ftbSubmit=document.forms[0].onsubmit;
if (typeof(ftbSubmit) == 'function')
{
document.forms[0].onsubmit = function()
{
try{ftbSubmit();}
catch(ex){}
}
}
// We are ok
return true;
}
Поскольку мой сайт является сайтом ASP.NET, мне также пришлось добавить эту строку в Page_Load ():
ClientScript.RegisterOnSubmitStatement(this.GetType(), String.Concat(this.ClientID, "_OnSubmit"), "javascript: return OvrdSubmit();");
Надеюсь, это поможет кому-то с такой же проблемой.