1

我在 Visual Studio 2010 应用程序服务器中运行我的应用程序,但现在我已将其更改为使用 IIS 本地服务器,然后一切都崩溃了。我收到以下错误:

System.Data.SqlClient.SqlException:数据库“master”中的 CREATE DATABASE 权限被拒绝。
尝试为文件 D:\Code\EMSApplication\EMSApplication.Web\App_Data\ASPNETDB.mdf 附加自动命名数据库失败。存在同名数据库,或无法打开指定文件,或位于 UNC 共享上。

我已将 IIS 默认网站的应用程序池设置更改为经典 .NET AppPool。

在此处输入图像描述

还将经典 .NET AppPool 的标识更改为 LocalSystem。

在此处输入图像描述

我还将 NETWORK SERVICE 的权限设置为 Full

在此处输入图像描述

连接字符串是:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.mdf;Integrated Security=True

但他们都没有工作。我仍然收到该错误。任何建议都会对我很有帮助。

谢谢。


我正在使用随 Visual Studio 2010 安装的 SQL Server 2008 Express。

4

1 回答 1

6

很明显,问题是您已经有一个名为 ASPNETDB 的数据库附加到该 SQL Server 实例。我的假设是 VS 开发 Web 服务器仍在运行,这就是附加的数据库。如果是这样,只需将其关闭并尝试重新启动 IIS,就可以了。如果还不行,去下载 SSMS Express,连接到你的本地 SQLExpress 实例,然后尝试从那里分离现有的数据库。

于 2012-03-21T16:51:15.303 回答