Для этого я использую SqlClient в своем контроллере. Ниже приведен код контроллера и страницы просмотра.
Код: Выделить всё
[HttpGet]
public ActionResult DataEntry()
{
var query = "SELECT State, Description FROM dbo.CountryState WHERE Country = 'USA'";
//I declared the connection string in the beginning of the controller as below
//string cnn = "Server=mydb;Database=db_registry_data;Trusted_Connection=True;";
List stateList = new List();
using (SqlConnection con = new SqlConnection(cnn))
{
con.Open();
SqlCommand cmd = new SqlCommand(query, con);
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
DataForm dataForm = new DataForm();
dataForm.Description = Convert.ToString(reader["Description"]); // description: full name of state
dataForm.State = Convert.ToString(reader["State"]); //state: initials of the state
stateList.Add(dataForm);
}
}
con.Close();
}
ViewBag.States = stateList;
return View();
}
Код: Выделить всё
@model DataEntry.Models.DataForm
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
@using (Html.BeginForm("DataEntry", "DataForm", new { @class = "form-control", style = "display: flex;" }))
{
@Html.AntiForgeryToken()
State:
@Html.DropDownListFor(m => m.State, new SelectList(ViewBag.States, "State","Description"), "--Please Select--", new { @class = "form-control"})
}
Microsoft.Data.SqlClient .SqlException: «Соединение с сервером было успешно установлено, но во время входа в систему произошла ошибка. (поставщик: поставщик SSL, ошибка: 0 — неправильное имя целевого участника.)»
Win32Exception: неверное имя целевого участника.
Мне бы хотелось, чтобы кто-нибудь помог исправить эту ошибку. Спасибо!
P.S. Я не публиковал одну из функций [HttpPost], поскольку она успешно извлекает форму перед добавлением @Html.DropDownListFor(m => m.State, new SelectList(ViewBag.States, "State","Description "), "--Please Select--", новая часть { @class = "form-control"}) на странице просмотра.
Подробнее здесь: https://stackoverflow.com/questions/767 ... n-error-oc
Мобильная версия