У меня есть метод C #, который выполняет InsertAsync
для базы данных Oracle, доступ к которой осуществляется с помощью Dapper ORM . Эта функция успешна при запуске на моем локальном ПК (и на компьютерах других коллег), но когда код был передан на сервер разработки, InsertAsync не удалось с Oracle Exception ORA-01036: illegal variable name/number
. База данных Oracle находится на удаленном сервере разработки, поэтому в обоих случаях осуществляется доступ к одной и той же базе данных; единственное различие заключается в том, работает ли код на сервере или на локальном ПК.
Когда код был отправлен на сервер QA, который обращается к базе данных QA, исключение Oracle не произошло! Один и тот же код работает на серверах dev и QA.
Я искал Stack Overflow для этой проблемы, но не видел никого другого с проблемой, что код работает локально, но не удаленно на одном сервере, но работает удаленно на другом сервере.
Это код; запись в журнале ошибок с сервера указывает, что исключение происходит в строке с InsertAsync
private async Task InsertAsync(T item, IDbTransaction transaction = null)
{
await _connection.InsertAsync(item, transaction ?? _transaction);
}
Этот метод находится в классе, который реализует функции Dapper, где класс начинается следующим образом:
public class DapperClass<T> : IDapperClass<T> where T : class
{
private readonly IDbConnection _connection;
private readonly IDbTransaction _transaction;
private readonly ILogUnitOfWork _loggingUow;
public DapperClass(IDbConnection connection, ILogUnitOfWork logUow)
{
_connection = connection;
_logUow = logUow;
}
public DapperClass(IDbTransaction transaction, ILogUnitOfWork logUow)
{
_transaction = transaction;
_connection = _transaction.Connection;
_logUow = logUow;
Я озадачен тем, почему код будет успешным на локальном ПК, но не на удаленном сервере разработки, но на удаленном сервере QA. Это определенно один и тот же код на сервере dev и QA, и я дважды проверил, что на локальном ПК я запускаю обновленную ветку dev, так что это тот же код на локальном ПК и сервере dev. Есть идеи, какое направление исследовать?