sql-server - 尝试运行 db.Execute 命令时出现“/应用程序中的服务器错误”
问题描述
我正在为一个项目创建一个网站,但我不断收到此错误。网站的这一部分是注册页面,访问者在其中输入他们的信息,然后代码应该将其写入我连接的数据库。我正在使用 Visual Studio,我的网页是一个 .cshtml 文件。我正在使用的执行命令如下:
db.Execute(insertCommand, name, email, number, address, psw, psw_repeat);
这是完整的数据库代码:
@{
var name = "";
var email = "";
var number = "";
var address = "";
var psw = "";
var psw_repeat = "";
if (IsPost)
{
name = @Request.Form["name"];
email = @Request.Form["email"];
address = @Request.Form["address"];
psw = @Request.Form["psw"];
psw = @Request.Form["psw_repeat"];
var db = Database.Open("UserDetails");
var insertCommand = "INSERT INTO [dbo.details] (Name, Email, Number, DeliveryAddress, Password, RepeatPassword) VALUES(@name, @email, @number, @address, @psw, @psw_repeat)";
db.Execute(insertCommand, name, email, number, address, psw, psw_repeat);
}
}
当我尝试运行网页时,一切正常,我可以输入详细信息。当我单击提交按钮时,会显示此错误:
“/”应用程序中的服务器错误。建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)
这条线以红色突出显示:
db.Execute(insertCommand, name, email, number, address, psw, psw_repeat);
我查看了许多类似的问题并尝试添加:
<system.web>
<customErrors mode="Off"/>
在我的 web.config 文件中,但这没有帮助。
请你能帮我理解问题是什么以及你可能有的任何可能的解决方案。谢谢你。
编辑:经过进一步研究,我尝试在 Microsoft SQL Server Management Studio 中打开数据库。输入服务器名称时:'RM48-11' 我再次收到此错误:
TITLE: Connect to Server
------------------------------
Cannot connect to RM48-11.
------------------------------
ADDITIONAL INFORMATION:
A network-related or instance-specific error occurred while establishing a
connection to SQL Server. The server was not found or was not accessible.
Verify that the instance name is correct and that SQL Server is configured
to allow remote connections. (provider: Named Pipes Provider, error: 40 -
Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 2)
For help, click: http://go.microsoft.com/fwlink?
ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=2&LinkId=20476
------------------------------
The system cannot find the file specified
------------------------------
BUTTONS:
OK
------------------------------
完整代码:
@using WebMatrix.Data;
@using System.Data.SQLClient;
@{
var name = "";
var email = "";
var number = "";
var address = "";
var psw = "";
var psw_repeat = "";
if (IsPost)
{
name = @Request.Form["name"];
email = @Request.Form["email"];
address = @Request.Form["address"];
psw = @Request.Form["psw"];
psw = @Request.Form["psw_repeat"];
var db = Database.Open("UserDetails");
var insertCommand = "INSERT INTO [dbo.details] (Name, Email, Number,
DeliveryAddress, Password, RepeatPassword) VALUES(@name, @email, @number,
@address, @psw, @psw_repeat)";
db.Execute(insertCommand, name, email, number, address, psw,
psw_repeat);
}
}
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
font-family: Arial, Helvetica, sans-serif;
}
* {
box-sizing: border-box;
}
.container {
padding: 0px;
background-color: white;
}
input[type=text], input[type=password] {
width: 100%;
padding: 15px;
margin: 10px 0 5px 0;
display: inline-block;
border: none;
background: #f1f1f1;
}
input[type=text]:focus, input[type=password]:focus {
background-color: #ddd;
outline: none;
}
hr {
border: 1px solid #f1f1f1;
margin-bottom: 5px;
}
.registerbtn {
background-color: #4CAF50;
color: white;
padding: 16px 20px;
margin: 4px 0;
border: none;
cursor: pointer;
width: 100%;
opacity: 0.9;
}
.registerbtn:hover {
opacity: 1;
}
a {
color: dodgerblue;
}
</style>
</head>
<body>
<form id="form1" action="" method="post">
<div class="container">
<h1>Register</h1>
<p>Please fill in this form to create an account.</p>
<hr>
<label for="name"><b>Name</b></label>
<input type="text" name="name" value="@Request.Form["name"]" />
<label for="email"><b>Email</b></label>
<input type="text" name="email" value="@Request.Form["email"]" />
<label for="number"><b>Phone Number</b></label>
<input type="text" name="number" value="@Request.Form["number"]" />
<label for="address"><b>Delivery Address</b></label>
<input type="text" name="address" value="@Request.Form["address"]" />
<label for="psw"><b>Password</b></label>
<input type="text" name="psw" value="@Request.Form["psw"]" />
<label for="psw_repet"><b>Repeat Password</b></label>
<input type="text" name="psw_repeat" value="@Request.Form["psw_repeat"]" />
<input type="submit" name="buttonSubmit" value="Register">
</div>
<div class="container signin">
<p>Already have an account? <a href="login.aspx">Sign in</a></p>
</div>
</form>
解决方案
推荐阅读
- google-apps-script - 如何多次运行脚本
- html - 如何使用css在列表项旁边添加一条垂直线
- php - 使用 RESTful 控制器在 Laravel 7 中使用 PHP 在浏览器中显示 .pdf 文件
- c# - 带有序列化的“指定的演员表无效”
- spring-boot - PDF 文件大小为 0 字节并在控制台中出现错误
- java - 动态方法分派和运行时多态性错误
- db2 - 提交到单个表并回滚到其他表
- robots.txt - 忽略爬虫中的 robots.txt 和元标记
- python - 我想使用python,pandas提取满足某些条件的数据框
- linux - 普通用户在 /var/run 中触摸文件失败