#c# #asp.net #oracle #entity-framework
#c# #asp.net #Oracle #entity-framework
Вопрос:
У меня есть веб-сайт в ASP, использующий NET Framework 4.5, Entity Framework 6.1.3, подключенный к базе данных Oracle 11, работающий на IIS 10 и Windows Server 2019.
В главном представлении размещается динамическое частичное представление (которое обозначается идентификатором). У меня такая проблема, когда через несколько дней я получаю сообщение об ошибке Ошибка сервера в приложении ‘/’, ORA-00933: команда SQL завершилась неправильно.
Затем, когда я пытаюсь отладить проект в Visual Studio, я не получаю сообщение об ошибке, и единственное решение — заменить файлы сайта и перезапустить его. А затем, несколько дней спустя, я получаю ту же ошибку (и что-то в других частичных представлениях).
У кого-нибудь была эта проблема? Или у вас есть представление о том, что это вызывает?
При возникновении исключения (на сайте IIS) также указывается строка:
Entidades.CONTROL_ACCESO controlAcceso = db.CONTROL_ACCESO.Find(idControlAcceso);
Комментарии:
1. Я бы использовал из cmd.exe > Netstat -a, который предоставляет список открытых UDP / TCP-соединений и статус. Я подозреваю, что соединение закрыто. Используя сниффер, такой как wireshark или fiddler, вы можете проверить, почему соединение закрыто. Закрыто обозначается символом [FIN] . Итак, могут произойти три вещи: 1) Клиент закрывает соединение 2) Сервер закрывает соединение 3) Сервер завершает работу без закрытия соединения. При перезапуске сервера соединение не восстанавливается автоматически.
2. Случайно ли эти операторы заканчиваются символом завершения (например, точкой с запятой или косой чертой)? Если это так, попробуйте удалить их и посмотреть, что произойдет.
3. Кроме того, пожалуйста, проверьте это сообщение о HttpClient, но, похоже, это общая проблема «класса подключения». Еще один совет (не поможет вам сейчас): дамп / журнал вашего сгенерированного sql , когда он сталкивается с исключением.