关于ADO.NET连接的问题
<%@ Page Language= "VB " %>
<%@ Import Namespace = "system.data " %>
<%@ Import Namespace = "system.data.sqlclient " %>
<%@ Import Namespace = "system.configuration " %>
<script runat= "server " >
Protected Sub Page_load(ByVal sender As Object, ByVal e As System.EventArgs)
If Not Page.IsPostBack Then
Dim conn As SqlConnection
Dim cmd As SqlCommand
Dim rd As SqlDataReader
conn = New SqlConnection()
conn.ConnectionString = ConfigurationManager.ConnectionStrings( "DSN_Northwind ").ConnectionString
cmd = New SqlCommand()
cmd.CommandText = "select top 3 * from customers "
cmd.CommandType = CommandType.Text
cmd.Connection = conn
cmd.Connection.Open()
rd = cmd.ExecuteReader(CommandBehavior.CloseConnection)
gvCustomers.datasource = rd
gvCustomers.databind()
cmd.Dispose()
conn.Dispose()
End If
End Sub
</script>
<html>
<head runat= "server ">
<title> 无标题页 </title>
</head>
<body>
<form id= "form1 " runat= "server ">
<div>
<asp:GridView ID= "gvCustomers " runat= "server ">
</asp:GridView>
</div>
</form>
asdfFFFDD
</body>
</html>
在vs2005中执行时,下面这行
conn.ConnectionString = ConfigurationManager.ConnectionStrings( "DSN_Northwind ").ConnectionString
报错。
错误提示如下:***********************
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
源错误:
行 12:
行 13: conn = New SqlConnection()
行 14: conn.ConnectionString = ConfigurationManager.ConnectionStrings( "DSN_Northwind ").ConnectionString
行 15:
行 16: cmd = New SqlCommand()
源文件: D:\work\dotNet\WebSite1\database.aspx 行: 14
堆栈跟踪:
[NullReferenceException: 未将对象引用设置到对象的实例。]
ASP.database_aspx.Page_load(Object sender, EventArgs e) in D:\work\dotNet\WebSite1\database.aspx:14
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +13
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +45
System.Web.UI.Control.OnLoad(EventArgs e) +80
System.Web.UI.Control.LoadRecursive() +49
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3745
***************************************************************************
请问是什么原因报错?
上面的 DSN_Northwind是指在ODBC中建立的DSN连接吗? 可我已经建立了名为DSN_Northwind的连接!
数据库为MSSQL2000,难道这儿是对MSSQL2005的?
请高手指点,谢谢!!
[解决办法]
web.config中没有配置
[解决办法]
<connectionStrings > <add name= "DSN_Northwind " connectionString= "............. "/> </connectionStrings>