以前一直用sql server,最近用access写个程序,但是,浏览网页的时候,如果刷新多次就会出现如下错误:
“/WangerForum”应用程序中的服务器错误。
--------------------------------------------------------------------------------未指定的错误 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误源错误: 
行 91:  cn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\\Inetpub\\myweb\\WangerForum\\database\\WangerForum.mdb");
行 92: 
行 93:  cn.Open (); 
这个时候只有重新编译后,程序才能正常运行,但是如果再次刷新多次同一个页面,还会出现同一个错误。我已经把数据库的安全选项卡里面的everyone,和数据库所在目录的everyone两个都赋予所有权限,但问题依旧。请高手帮忙解决

解决方案 »

  1.   

    可以肯定是Access引起的吗?
    我不知道C#为什么要这样\\子写路径呢?
      

  2.   

    \是C#中的转义字符 
    字符串中包含 \的时候可以用两个\\转义一下
    或者 string test = @"c:\test\test\test.mdb";
      

  3.   

    WangerForum.mdb给予完全控制的权限
      

  4.   

    /// <summary>
    /// 关闭连接
    /// </summary>
    private void CloseConnection()
    {
    // 关闭Command
    if (objCmd != null)
    {
    objCmd.Dispose();
    } // 关闭连接
    if (objConn != null && objConn.State == ConnectionState.Open)
    {
    objConn.Dispose();
    }
    }
      

  5.   

    是操作系统的授权问题,如果你把C:\Inetpub\myweb\WangerForum\database\WangerForum.mdb设为eveyone都能完全控制就不会出现这个问题。最好不好这样,因为不是很安全,只要别人装了探针就可能控制的东东,所以把权限和IIS中的安全设置合起来,网上有这样的文章,自己找一下吧。
      

  6.   

    检查一下有没有DataReader未关闭
      

  7.   

    查下msdn关于System.Data.OleDb.OleDbException的信息没?