日期:2014-05-19  浏览次数:20465 次

请教ASP.NET连接数据库问题。在线等待!
源码如下:
<%@   Import   namespace   =   "System.Data "%>
<%@   Import   namespace   =   "System.Data.SqlClient "%>

<html>
<head>
<title> ASP.NET   VOD </title>
<script   Language= "C# "   runat= "server ">
public   void   Page_Load(Object   sender,EventArgs   e)
{      
//   连接到本地计算机的eShops数据库
String   strConn   =   "server=(local);database=test;   uid   =   sa;   Pwd   = ";

SqlConnection   cn   =   new   SqlConnection   (strConn);
//   打开连接
cn.Open();    
//   显示连接状态
Message.Text   =   cn.State.ToString();
//   关闭连接
cn.Close();
}
</script>
</head>
<body>
<asp:label   id= "Message "   runat= "server "   > Label </asp:label>
</body>
</html>

在IE地址栏中输入http://localhost/Connection.aspx,得到如下页面:

“/”应用程序中的服务器错误。
--------------------------------------------

用户   'sa '   登录失败。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

异常详细信息:   System.Data.SqlClient.SqlException:   用户   'sa '   登录失败。

源错误:  

生成此未处理异常的源代码只能在调试模式中进行编译时显示。若要启用该功能,请执行以下步骤之一,然后请求   URL:

1.   在生成错误的文件的顶部添加一个“Debug=true”指令。示例:

    <%@   Page   Language= "C# "   Debug= "true "   %>

或者:

2.   将以下节添加到应用程序的配置文件中:

<configuration>
      <system.web>
              <compilation   debug= "true "/>
      </system.web>
</configuration>

请注意,第二种方法将使给定应用程序中的所有文件在调试模式下进行编译。第一种方法只使特定文件在调试模式下进行编译。

重要事项:以调试模式运行应用程序肯定会引起内存/性能系统开销。在部署到产品方案中之前,应该确保应用程序已禁用调试。    

身份验证模式使用的是混合验证。不知错误出在哪里?请赐教!


------解决方案--------------------
楼上不对,sa也可以不要密码
------解决方案--------------------
直接用工具-〉连接到数据库 功能连接后,会生成一个串,这个串是有效的

------解决方案--------------------
连接数据库不成功啊.
查询分析器用sa;空密码能登上吗?
不行就改用集成方式登录咯。
------解决方案--------------------
sa是可以设置为空 但如果设置为空 连接字符串的密码就无法使用 而且非常不安全
------解决方案--------------------
在桌面上那家一个123.udl的文件,双击打开,进行数据库连接配置,并测试,完成后退出,然后用记事本打开123.udl文件,就可以看到连接串了,把这个串复制到需要用的地方,试试看能不能成功。C#中不需要通道的那个设置,所以最前面的那个设置可以不要。