ASP.NET MVC新手:无法让aspnet_regsql.exe工作

Roe*_*ler 4 sql-server sql-server-express

我刚刚安装了Web Developer Express 2008和MVC框架(遵循所有默认设置,在此过程中安装了SQL Server Express).我遵循了最初的NerdDinner步骤,从IDE创建了一个数据库并定义了表(工作正常).

为了进一步定义严重依赖于用户群的表,我必须弄清楚如何将用户表添加到我新创建的数据库中(这样我就可以创建带有用户表的外键的表),所以我"跳到"手册中的身份验证和授权部分,他们提到我需要从目录"C:\ WINDOWS\Microsoft.NET\Framework\v2.0.50727"运行"aspnet_regsql.exe".

我找到了该文件并运行它.

它要求提供服务器名称并有一些默认值(它是我的计算机名称的首字母).我不记得在安装Visual Web Developer期间明确提到任何这样的名称,我认为它是默认的.选择"Windows身份验证".我也可以选择"SQL服务器身份验证",但我不记得创建它所需的用户名和密码.

当我选择数据库时,单击"数据库"组合框的下拉列表,需要几秒钟,然后它会发出以下错误消息:

"无法从SQL服务器查询数据库名称列表.建立与SQL Server的连接时发生网络相关或实例特定错误.未找到服务器或无法访问服务器.验证实例名称是否正确SQL Server配置为允许远程连接.(提供程序:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)"

我在网上研究了这个,并没有为我看似微不足道的问题找到一个简单的解决方案.

为了澄清,我不想要远程连接,而是本地连接.

在我继续使用regsql进程之前,是否需要执行本地SQL Server Express安装所需的步骤?

这是普通的香草,开箱即用安装......有什么想法吗?

hqr*_*sie 7

如果你想继续使用向导,它实际上是一个非常简单的解决方案.在出现此问题的"选择服务器和数据库"屏幕上,"服务器"文本框中的默认值将设置为您的计算机名称.附加要连接的SQL Server的特定实例(即LOCALHOST可能变为LOCALHOST\SQLEXPRESS).

如果您指向有效实例,则"数据库"下拉列表将按预期填充.


Ben*_*ins 6

首先,复制MDF文件的备份,以防此命令完全占用您的工作.试试这个:aspnet_regsql -A all -C "Data Source=.\SQLEXPRESS;Integrated Security=True;User Instance=True" -d "PATH_TO_MY_DATABASE.MDF_FILE"

切换PATH_TO_MY_DATABASE.MDF_FILE到MDF文件的完整路径.它很可能位于您的APP_DATA文件夹中.

此信息来自此博客文章,我过去成功地使用它来为具有MDF文件数据库的SQL Server Express项目设置成员资格表.