ASP.net:无法使用<database file =“”>;文件已在使用中

时间:2017-11-29 17:36:46

标签: c# asp.net ms-access iis

我的服务器上由IIS托管的ASP.net Web应用程序(C#)与Access数据库连接。重要的是,我可以在Access中打开数据库,同时仍然使用该网站。

每当我尝试这个时,我都会收到“无法使用文件;文件已在使用中”错误。我已经对这个主题进行了大量研究,但似乎没有任何效果。

我已为包含数据库的文件夹的IUSR,NETWORK SERVICE和IIS_IUSRS添加了修改权限。这似乎都不起作用。

奇怪的是,我尝试从我的本地计算机托管网站,上面的解决方案解决了这个问题,但是从我的服务器托管网站时它不起作用。

即使数据库关闭,我的网站也会在尝试执行INSERT语句时窒息。我收到错误“操作必须使用可更新的查询”

有什么想法?感谢。

1 个答案:

答案 0 :(得分:1)

关于:

  

但从我的服务器托管网站时它不起作用

我不确定您的其他配置,但这可能会说明您在不同系统上获得不同行为的原因: 您应该为您在IIS中为应用程序配置的应用程序池启用相同的权限(对于Database文件夹)。

  1. 打开服务器的IIS管理控制台
  2. 查看应用程序池对您的应用程序的作用 右键单击Application节点: 管理应用程序&#39; &GT;&GT; &#39;高级设置&#39; &GT;&GT;应用程序池

  3. 打开应用程序池视图:查找应用程序池

  4. 右键单击App Pool&gt;&gt;高级设置
  5. 查找身份
  6. 这是您应该像在本地计算机文件夹中那样复制权限的身份
  7. P.S。:通常建议您为每个应用程序配置/创建专用的应用程序池。

    希望这有助于解决您的问题。