Я создаю веб-сайт для проекта и получаю эту ошибку. Эта часть веб-сайта является страницей регистрации, где посетитель вводит свою информацию, а затем код должен записывать ее в базу данных, к которой я подключился. Я использую Visual Studio, и моя веб-страница представляет собой файл .cshtml. Команда execute, которую я использую, выглядит следующим образом:
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, но это не помогло.
Пожалуйста, не могли бы вы помочь мне понять, в чем заключается проблема, и возможные возможные решения.
Спасибо.
EDIT:
После дальнейших исследований я попытался открыть базу данных в 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>