日期:2014-05-17  浏览次数:20658 次

关于Login控件和aspnetdb.mdf的问题 ,高手来帮帮我 ,请高手解释这是为什么.这是为什么 ????????????
请读完我的问题描述再做回答

我按教程,拖个Login控件 和CreateUserWizard 控件. 
按教程上讲的,在第一次注册后,系统会自动会自动给我创建个aspnetdb.mdf文件放
在app_data文件夹下,
并且系统还会自动帮我在machine.config中生成连接字串.

我试了,一切都是和教程讲的一样.从注册到登录 ,非常OK! 一切正常 , 
就是下面的一步.我确定就是下面一步后,一切问题就出来了.
接下我,我继续按书上的做,"你可以在vs2012中找到app_data文件夹,刷新后就会看到aspnetdb.mdf  ,双击打开它.可以在Server Explorer 中浏览它,会发现你刚才已注册的用户" 我做了,和书上的一样.
但我当再次运行程序的登陆页,准备登陆时.无法登录 

错误如下:
Cannot open user default database. Login failed.
Login failed for user '9AM2MHOSQLMQIF6\Administrator'. 
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信

我认为是刚才打开的Server Explorer的问题,于是,我就分离断开Server Explorer对ASPNETDB.mdf的连接,继教运行程序尝试登录.
还是失败,错误如下:

The database 'D:\DESKTOP\经常看的书\最新常看的书\ASP\ASPNET4\BEGINGASP4.5SOURCECODE\SOURCE\CH16TEST
\APP_DATA\ASPNETDB.MDF' cannot be opened because it is version 706. This server supports version 655 and earlier. A 
downgrade path is not supported.
Cannot open user default database. Login failed.

(我知道我的系统里装有 sql2008 sql2012 sqlexpress)
因为aspnetdb.mdf和配置字串都是系统生成,对于以上错误,我无从下手,于是我决定把aspnetdb.mdf删除从来.但是却又提示,无法删除  另一个程序正在使用此文件,进程无法访问.
我检查了sql2008 sql2012 sqlexpress 均未发现aspnetdb.mdf这个数据库.我检查vs2012也未发现存在与aspnetdb.mdf的相关的链接. 我关掉sql2008 sql2012 sqlexpress 和vs. 到文件目录下直接删除,
仍然无法删除 . 提示 操作无法完成.因为文件已在SQL Server Windows NT 中打开.
此时,大概有一个小时,找不到原因.我已有些神经错乱了. 只好重启电脑, 删除成功.
但我不敢在 Vs 在 ServerExplore 中打开 aspnetdb.mdf 一旦打开,
程序就又不能正常登录了.请高手解释这是为什么.这是为什么 ???????????? 

------解决方案--------------------
什么叫做“分离断开Server Explorer对ASPNETDB.mdf的连接”?

你关闭 Sql Server Explorer 了么?