У меня есть простое решение, которое работает для меня, не требуется изменение кода сервера ... просто добавьте tsp мускатного ореха ...
$(document).ready(function ()
{
$(document).ajaxSend(
function(event,request,settings)
{
var intercepted_success = settings.success;
settings.success = function( a, b, c )
{
if( request.responseText.indexOf( "<html>" ) > -1 )
window.location = window.location;
else
intercepted_success( a, b, c );
};
});
});
Я проверяю наличие тега html, но вы может изменить indexOf для поиска любой уникальной строки на вашей странице входа ...
Если Ваш на SQL 2005 можно попробовать:
BEGIN TRANSACTION
BEGIN TRY
--Run your Statements
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
DECLARE @Msg NVARCHAR(MAX)
SELECT @Msg=ERROR_MESSAGE()
RAISERROR('Error Occured: %s', 20, 101,@msg) WITH LOG
END CATCH
Я также указал бы, что при получении этой ошибки часто необходимо пересмотреть размер столбца, в который Вы вводите данные или корректируете Ваш процесс очистки для подготовления данных прежде, чем поместить его в таблицу напоминания. В SSIS у Вас могли также быть данные, которые встречают deosn't, стандартный размер переходят к таблице неправильных данных и обрабатывают остальных.
Как насчет того, чтобы включить xact_abort
set xact_abort on