我用2005开发环境写了段数据访问类,结构如下(草写代码,部分类的全名和大小写勿关注)
public DataTable getData(string strCon,string strCmdText)//数据读取方法
{
    System.Data.Sqlconection con =  new System.Data.Sqlconection con(strCon);
    if(con.state==ConnectState.closed)
    {
      con.close();
    }
    System.Data.SqlDataAdaphter da = new System.Data.SqlDataAdaphter(con,"select * from A");
    DataTable dtTemp = new DataTable();
    
    da.fill(dtTemp);
    
    //关闭连接
    try{
        con.close();
    }catch{}
}//数据写入方法,顺序调用数据读取方法 后进行数据写入,在打开连接的时候报  标题上的异常,求大侠解决方案
public void InData(string strCon,string strCmdText)
{
  System.Data.Sqlconection con =  new System.Data.Sqlconection con(strCon);
    if(con.state==ConnectState.closed)
    {
      con.close();
    }//由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值    
    ....
}

解决方案 »

  1.   

    及 在我 调用  getData(链接1,"select * from a");
    后在调用
    InData(链接2,“insert into b..”)
    方法中
    在打开链接的时候报异常“由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值”,即使我用微软提供的数据访问类也是这个效果,在线等解决方案。
      

  2.   

    问题已经找到,是该方法同时包含在一个进程中
    我实例化了一个进程
    Thread thread = new Thread(new Thre..start(f));
    thread.start()
    private void f()
    {
      getData(链接1,"select * from a");
      InData(链接2,“insert into b..”) 
    }去掉进程后,无改异常,若加上该进程后存在该异常,请问高手有无不去掉进程的解决方案,以及为什么?