第一个问题:winform的关闭按钮上我写的代码是:
System.Environment.Exit(0);
我发布后执行程序,在关闭后,系统进程中,怎么还有我这个程序的.exe进程啊
第二个问题 :C#如何判断oracle数据库可以连接上?
即写一个 bool类型的方法,判断oracle数据能否连接成功
首先我说明一下,我已经在网上找过答案了,都有些问题,希望高手指点一下。

解决方案 »

  1.   

    你试试 Application.ExitThread();
    oracle没用过
      

  2.   

    1.System.Environment.Exit(0);肯定会有一个exe程序因为你是System.xxxx2.不就是加个try{}catch{}判断就行了么
    private   void   Button1_Click(object   sender,   System.EventArgs   e)
    {
    string   ConnectionString= "Data   Source=sky;user=system;password=manager; ";   //写连接串
    OracleConnection   conn=new   OracleConnection(ConnectionString);   //创建一个新连接
    try
    {
          conn.Open();
          OracleCommand   cmd=conn.CreateCommand();
          cmd.CommandText= "select   *   from   MyTable ";   //在这儿写sql语句
          OracleDataReader   odr=cmd.ExecuteReader();//创建一个OracleDateReader对象
          while(odr.Read())//读取数据,如果odr.Read()返回为false的话,就说明到记录集的尾部了                                
          {
                Response.Write(odr.GetOracleString(1).ToString());//输出字段1,这个数是字段索引,具体怎么使用字段名还有待研究
            }
            odr.Close();
    }
    catch(Exception   ee)
    {
              Response.Write(ee.Message);//如果有错误,输出错误信息
    }
    finally
    {
              conn.Close();   //关闭连接
    }
    }
      

  3.   

    System.Environment.Exit(0)
    是直接让进程自杀的啊,怎么可能还会有进程呢楼主,你就是来忽悠人的吧
      

  4.   

    using(OracleConnection conn=new OracleConnection(ConnectionString))
    {
    OracleCommand cmd=conn.CreateCommand();
    cmd.CommandText= sqltext;
    OracleDataReader odr=cmd.ExecuteReader();
    while(odr.Read())
    {
    ........
    }
    }
      

  5.   

    1、第一个问题有点奇怪,会不会是你的应用程序中使用了多线程
    2、
    public boolean CanConnect()
    {
        try{
            using(OracleConnection conn=new OracleConnection(ConnectionString))
            {
                conn.Open();
                return true;
            }
        }
        catch(Exception)
        {
            return false;
        }
    }
      

  6.   

    mathieuxiao 非常感谢你!
    Application.ExitThread();  可以
    其他的童鞋 我说的是要写一个bool类型的方法
    所以你们不得分。
    不好意思。