0

发布我的网站后,我收到以下错误:

System.UnauthorizedAccessExceptionAccess to the path 'C:\inetpub\MySite\App_Data' is denied.

原来是因为它无法访问 App_Data\ASPNETDB.MDF。这是因为它不存在,因为我的网站不使用它。我检查了我的本地机器,有一个包含数据库的 App_Data 文件夹,但它不包含在我在 VS 中的构建中。但是,如果我删除它,它会在我在 VS 中运行该站点时重新创建。

此后,一旦错误似乎自行清除,该站点就可以正常工作,但是每次部署时都会发生。

代码中的任何地方都没有引用它。如何/为什么在应用程序启动时创建它,我该如何停止它?

我将 SimpleMembership 与存储在 SQL Server 数据库中的所有数据一起使用。

4

2 回答 2

2

我以前遇到过这个问题。当您想发布您的应用程序时,如果 app_data 文件夹为,它不会复制到已发布的应用程序。所以在发布之前,将文件复制到 app_data 文件夹,然后发布您的应用程序......或者您可以检查是否存在以在代码中创建:

var folder = System.Web.HttpContext.Current.Server.MapPath("~/App_Data/");
if (!Directory.Exists(folder)) 
    Directory.CreateDirectory(folder);
于 2015-05-25T07:38:51.810 回答
0

尝试转到 App_Data 文件夹属性并添加具有读写权限的 ASPNET 用户

拒绝访问路径“c:\inetpub\wwwroot\myapp\App_Data”

于 2014-04-09T18:38:47.313 回答