我已尝试过所有内容,但我无法获得基本的asp.net站点来连接数据库。我正在使用Visual Studio并尝试将数据从本地数据库文件检索到.cshtml页面上的表中。
我尝试访问的数据库位于App_Data文件夹中。
在Web.config文件中,我在连接字符串下面有以下内容:
<add name="connectionName" connectionString="Data Source=|DataDirectory|\database.mdf" providerName="System.Data.SqlClient"/>
在页面上我有:
@{
var DB = Database.Open("connectionName");
var selectQueryString = "SELECT * FROM Clients ORDER BY lastName";
}
<table>
<thead>
<tr>
<td>client_id</td>
<td>firstName</td>
<td>lastName</td>
<td>address</td>
<td>city</td>
<td>state</td>
<td>postalCode</td>
<td>phone</td>
</tr>
</thead>
@foreach (var row in DB.Query(selectQueryString))
{
<tr>
<td>@row.client_id</td>
<td>@row.firstName</td>
<td>@row.lastName</td>
<td>@row.address</td>
<td>@row.city</td>
<td>@row.state</td>
<td>@row.postalCode</td>
<td>@row.phone</td>
</tr>
}
</table>
抛出的异常是:
An exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll but was not handled in user code
我也看到一些文字说明问题可能是:
发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 查找服务器/实例时出错 指定)
答案 0 :(得分:0)
对于在App_data
目录中包含mdf文件的本地数据源,您需要将AttachDbFilename
属性作为文件名包含,并将data source
属性设置为本地版本db你正在运行。看起来应该是这样的。
<add name="connectionName" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-myapp-mydb.mdf;Initial Catalog=aspnet-myapp-mydb;Integrated Security=True" providerName="System.Data.SqlClient" />
答案 1 :(得分:0)
NM。我想我需要更改(LocalDB)\ v11.0到(LocalDB)\ MSSQLLocalDB没有更多版本782错误。非常感谢你的帮助! Padhraic让我发疯了!