Asp.net 用户“登录失败”;sa";使用linqtosql实现sqlserver2000数据库

Asp.net 用户“登录失败”;sa";使用linqtosql实现sqlserver2000数据库,asp.net,sql,visual-studio-2010,visual-studio-2008,sql-server-2000,Asp.net,Sql,Visual Studio 2010,Visual Studio 2008,Sql Server 2000,我可以通过Enterprise Manager和Query Analyzer与sa用户连接。我在VisualStudio2008中创建了.dbml文件和连接字符串,然后手动将其导入VisualStudio2010ASP.NETMVC3项目 我的印象是,在VS2010中,这是一种可以接受的使用SQLServer2000数据库的方式 我已将连接字符串复制到ASP.Net网站中的Web.config中。 我根本不知道问题出在哪里。我希望这不是因为VS2010项目永远无法连接到SQLServer200

我可以通过Enterprise Manager和Query Analyzer与sa用户连接。我在VisualStudio2008中创建了
.dbml
文件和连接字符串,然后手动将其导入VisualStudio2010ASP.NETMVC3项目

我的印象是,在VS2010中,这是一种可以接受的使用SQLServer2000数据库的方式

我已将连接字符串复制到ASP.Net网站中的Web.config中。

我根本不知道问题出在哪里。我希望这不是因为VS2010项目永远无法连接到SQLServer2000

编辑
连接字符串为

<add name="MobiledbConnectionString" 
     connectionString="Data Source=JAMESWRIGHT2771\SQLLOCAL;Initial Catalog=mobiledb;User ID=sa;Password=MYPASSHERE"
     providerName="System.Data.SqlClient" />


显然,
MYPASSHERE
是我的密码所在

好的,通讯没有改变——它是向后兼容的。不过,您可能在数据库中尝试和执行的操作发生了很大变化。也就是说,LINQtoSQL的模式生成可能会做一些sql 2000不喜欢做的事情,除非它具有该模型的兼容模式


当您访问的数据库不存在时,经常会出现此错误。您创建了它吗?

我发现了这个问题,尽管我以前从未处理过这个问题。
当我将dbml文件导入VS 2010时,它被放入一个“类库”项目中,出于某种原因,它使用的是“Settings.Settings”文件中的连接字符串,而不是app.config或Web.config文件中的连接字符串(我通过完全删除Web.config和app.config连接字符串进行了验证)


我从未听说过这个Settings.Settings文件,但我现在通过更改该值使它工作。

不确定它是否相关,可能有点晚了,但我在我的连接字符串中添加了“Persist Security Info=True”选项,它成功了。

问题在于堆栈跟踪:
用户“sa”登录失败。
。SQL告诉您密码错误(或访问被禁用,或类似情况)。因此,您正在连接到SQL server。有没有可能以前在web.config中对密码进行了加密?没有,在web.config中密码是正确的,并且没有加密。VS 2010绝对可以使用SQL Server 2000-没有问题(除了SQL Server版本非常陈旧、破旧,缺少大量有用的功能……)您能告诉我们您正在使用的连接字符串吗?仅供参考-您距离sql server 2000的正式使用期限(2013年4月8日)还有不到8个月的时间。从那时起,他们甚至不再修补关键的安全问题。换句话说,现在是时候开始使用最小的Sql Server 2005了。是的,数据库已经创建,而Linq to Sql是在Sql Server 2000仍在大量使用时发布的,所以它应该可以正常工作。