我一直在花费大量时间来解决这个问题。看起来很简单,但我找不到方法。我几乎到处都在网上搜索,我的问题没有得到答案。我的错误应该在下面的代码中:
<?xml version="1.0" encoding="utf-8"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<connectionStrings>
<add name="C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL12.SQLEXPRESS\MSSQL\DATA\ADVENTUREWORKS2012_DATA.MDFConnectionString"
connectionString="Data Source=FIDEL\SQLExpress;Initial Catalog="C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL12.SQLEXPRESS\MSSQL\DATA\ADVENTUREWORKS2012_DATA.MDF";Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
</configuration>
我正在尝试使用ASP.NET建立SQL连接。我已经通过使用sqlDataSource添加连接,我可以看到连接正常。当我运行Web表单时,我收到上述错误。我正在阅读的一本书说我可能需要更改web.config中的连接字符串以正确指向您的数据库但是(他们没有说明如何)并且据我所知,我的连接字符串指向正确的地方。
这是我的selctionList.aspx:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:SqlDataSource ID="dsCustomer" runat="server" ConnectionString="<%$ ConnectionStrings:C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL12.SQLEXPRESS\MSSQL\DATA\ADVENTUREWORKS2012_DATA.MDFConnectionString %>" OnSelecting="SqlDataSource1_Selecting" SelectCommand="SELECT [CustomerID], [PersonID], [StoreID], [AccountNumber], [TerritoryID] FROM [Sales].[Customer]"></asp:SqlDataSource>
</div>
<asp:BulletedList ID="BulletedList1" runat="server" DataSourceID="dsCustomer" DataTextField="CustomerID" DataValueField="AccountNumber" OnClick="BulletedList1_Click">
</asp:BulletedList>
</form>
</body>
</html>
这真的很沮丧,我不知道该怎么做,我真的很感激一些帮助。
答案 0 :(得分:0)
请更改名称:
name="C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL12.SQLEXPRESS\MSSQL\DATA\ADVENTUREWORKS2012_DATA.MDFConnectionString"
简单就像:
name="MDFConnectionString"
。
我认为ASP.Net不喜欢:和\作为连接字符串名称的一部分。
此更改需要在web.config和aspx页面中进行。
答案 1 :(得分:0)
请更改您的连接字符串。您可以编写任何名称,而不需要编写MDF文件的路径。其次,将数据源更改为数据库名称。如果您使用的是文件而不是需要写入完整路径,如果您只是指向数据库而不是只需要编写数据库名称
<add name="nameOfConnectionString"
connectionString="Data Source=FIDEL\SQLExpress;Initial Catalog=ADVENTUREWORKS2012_DATA;Integrated Security=True"
providerName="System.Data.SqlClient" />