在本地一切正常,但是当我发布时,出现以下错误。我正在使用表单身份验证,但我将自己的连接字符串定义为非 sqlexpress 数据库。我不明白为什么我的应用程序需要访问权限才能在 App_Data 文件夹中创建数据库(或其他任何内容),因为我的数据库不存在/不会存在。任何帮助表示赞赏。
连接字符串:
<connectionStrings>
<add name="DataContext" providerName="System.Data.SqlClient" connectionString="Data Source=localhost;Initial Catalog={my db};Integrated Security=SSPI;MultipleActiveResultSets=True" />
</connectionStrings>
错误:
访问被拒绝创建 App_Data 子目录
说明:出于安全原因,身份“IIS APPPOOL\ASP.NET v4.0”(此 Web 应用程序在其下运行)无权在应用程序根目录中创建 App_Data 子目录。ASP.NET 将用于服务(例如 Membership 和 Profile)的 Microsoft SQL Express 数据库文件存储在应用程序的 App_Data 子目录中。
编辑:它告诉我如何通过添加 App_Data 文件夹并提供正确的权限来修复错误,但我不明白为什么我需要这个文件夹,如果我可以避免更改权限,我想这样做。