ODP.NET вызывает зависание при использовании с Casini - PullRequest
0 голосов
/ 11 мая 2011

У меня проблема с попыткой создания экземпляров объектов Oracle.DataAccess.Client в веб-приложении.

Чтобы проверить это, я создал новое веб-приложение asp.net и вставил следующий код в код Default.aspx:

    protected void Page_Load(object sender, EventArgs e)
    {
        Oracle.DataAccess.Client.OracleConnection conn = new Oracle.DataAccess.Client.OracleConnection();
        Oracle.DataAccess.Client.OracleCommand client = new Oracle.DataAccess.Client.OracleCommand(); 
    }

Для вызова OracleConnection () потребуется 2,5 минуты, но OracleCommand () будет быстрым. Если я переверну порядок 2 вызовов, произойдет обратное, и вместо этого будет висеть OracleCommand ().

Если я разверну этот код в IIS, он будет работать нормально, поэтому моя проблема только в Casini. Кто-нибудь сталкивался с этой проблемой раньше или есть идеи для меня? Я попытался переустановить клиент Oracle и Visual Studio, я даже попробовал старую версию клиента Oracle (112012 вместо 112021) с теми же результатами.

Кроме того, я работаю на новой машине с Windows 7, и у меня не было этой проблемы на моей предыдущей машине.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 12 мая 2011

Если вы сделаете это, то сразу же нажмите «Перезагрузить» и снова попадете на страницу, не перезапуская отладчик. Вы видите то же самое?.net в моих проектах как клиент Oracle загружен, но никогда ничего такого длинного.То, что это может быть связано с веб-сервером, очень странно.

0 голосов
/ 04 февраля 2012

Проблема в том, какую версию ODP.Net вы используете: 32 или 64 бита.

Visual Studio работает как 32-разрядный процесс, независимо от того, является ли ваша ОС 32- или 64-разрядной. Casini также работает как 32-битный процесс. В IIS 7.5 (в битах Win7-64) вы можете настроить пулы приложений для работы как 32- или 64-битные.

Итак, если вы используете ODP.Net 64 бит и Casini (32 бит), у вас будут проблемы. Но когда вы запускаете его на IIS, он работает нормально.

0 голосов
/ 12 мая 2011

Может, вам стоит подумать об использовании IIS Express вместо Кассини?

...