2014-12-16 4 views
-2

Несколько дней назад я начал получать ошибку 500 на POST в коде ниже. Это не происходит ни с одним из моих товарищей по команде. URL-адрес, полученный с помощью logEntryUrl, действителен при подключении к браузеру. Вызов POST работает в консоли. Когда на самом деле вызывается в приложении, я получаю ошибку 500 где-то глубоко в 1.7.2 коде JQuery (я бы точно сказать, где кроме того, что он, кажется, зависит от того, где я поставил точку останова):Разрешение внутренней ошибки сервера 500 - элемент с тем же ключом уже добавлен

var logEntryUrl = getPath("Log", "SaveLogEntry", "Logs"); 
    $.post(logEntryUrl, $("#LogEntryForm").serialize(), function (data) { 
     if (!data.IsValid) { 
      $("#button-save").removeAttr('disabled'); 
     } else { 
     refreshLogGrid(); 
     $("#addEditLogDiv").empty(); 
     $("#addEditLogDiv").dialog("close"); 
     $("#button-save").removeAttr('disabled'); 
    } 
}).fail(function (jqXHR, ajaxSettings, thrownError) { 
         console.log(jqXHR.status); 
         console.log(jqXHR.responseText); 
         console.log(thrownError); 
         refreshLogGrid(); 
         $("#addEditLogDiv").empty(); 
         $("#addEditLogDiv").dialog("close"); 
         $("#button-save").removeAttr('disabled'); 
        }); 

Я прочитал различные решения здесь, на Stack Exchange. Я понимаю, что у меня, вероятно, есть дублирующая переменная. Здесь я не нашел дублирующую переменную. Я попытался добавить консольный журнал выше, и я не узнал от него ничего нового. Единственное решение, которое я еще не пробовал, - это тот, который предлагает загрузить исходный код .Net Framework и изменить его для дальнейшего отслеживания.

Итак, что еще я могу сделать? Это сводит меня с ума.

+1

Прежде всего, зайдите в журнал ошибок вашего веб-сервера, чтобы узнать, что такое подробности ошибки 500. Если ошибки регистрируются, там должна быть лучшая информация. –

+0

Nice Au Batido в вашем аватаре – AlienWebguy

+0

Также 1.7.2 очень старый. Обновление до 1.11.x – AlienWebguy

ответ

0

Ответ, полученный сотрудником, был прост, и я чувствую себя идиотом за то, что не думал об этом. На самом деле существовал случай двух переменных внутри класса, которые отличались только в том случае, когда я сгенерировал и который создал система, как в разных исходных файлах, используя функциональность partial class. В конечном итоге проблема была решена путем расчесывания через Object Browser в области объектов, которые использовались в этом разделе. Более элегантный способ поиска проблемы мог включать использование Reflection для проверки классов, у которых были переменные, которые отличались только в случае.