C# 我的控制台项目赢得了';I don’’我不能继续下一步,因为我被困在一个使用中的句子里
这是我的代码C# 我的控制台项目赢得了';I don’’我不能继续下一步,因为我被困在一个使用中的句子里,c#,oracle11g,C#,Oracle11g,这是我的代码 using System; using System.Collections.Generic; using Oracle.DataAccess.Client; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Insert { class Program { static void Main() { C
using System;
using System.Collections.Generic;
using Oracle.DataAccess.Client;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Insert
{
class Program
{
static void Main()
{
Console.WriteLine("Start....");
String connString = "User Id=******;Password=*********;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=***.**.**.***)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=****))); Connection Timeout=5";
Console.WriteLine("connString was created....");
try
{
Console.WriteLine("start using sentence....");
using (OracleConnection connection = new OracleConnection(connString))
{
Console.WriteLine("in using scope....before connection opens....");
connection.Open();
OracleCommand cmd = connection.CreateCommand();
Console.WriteLine(connection.ServerVersion);
Console.WriteLine("Myworld");
cmd.CommandText = String.Format("INSERT INTO PROCESS_TEST ( TEST ) VALUES ( {0} )", "1");
cmd.ExecuteNonQuery();
cmd.CommandText = "SELECT TEST FROM PROCESS_TEST";
OracleDataReader read = cmd.ExecuteReader();
while (read.Read())
{
Console.WriteLine(read.GetString(0));
}
connection.Close();
}
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
Console.Read();
}
}
}
}
如果我在VisualStudio2013上运行代码,它会起作用
当我在其发布文件夹中运行exe时,它不起作用
稍后我插入了try-catch代码,以了解发生了什么,但它也不会抛出任何错误,无论我等待exe给出错误的时间有多长。这很奇怪,考虑到连接超时设置为5秒
它只不过是这一步。使用管理员权限运行exe也不起作用
让我再次告诉您,它在我的visual studio 2013上运行得非常好
有什么问题吗
已更新 事实证明,我的代码与.exe都可以正常工作,只是随机需要3~10分钟才能完成任务,这不是我想要的 为什么要花这么长时间才能打开连接?当应用程序在独立进程(如exe)下运行时,连接工作可能需要4~10分钟吗 它是为我的web应用程序运行的数据库服务器,连接工作以前从未困扰过我
只要连接打开,“我的exe”就会快速完成其余的工作(插入工作)。问题似乎出在您的Oracle数据库连接中<代码>使用在“运行”时实际上没有任何作用。@Aron是的,看起来确实如此。我更新了我的问题,结果证明它仍然有效。但打开连接需要的时间太长。我完全不明白。我的oracle服务器工作得很好,目前它在我的web应用程序中做得很好。