Я беру курс ASP.NET UDEMY. К сожалению, это старый курс, и я не верю, чтобы получить там ответ. < /P>
Теперь, что именно происходит. На этом этапе курса мне нужно работать с клиентами. Часть, которая должна показывать список клиентов или детали конкретного клиента, работают нормально. Однако, когда я пытаюсь добавить нового клиента в базу данных, приложение сбои. 'VidlyExcise1.controllers.customersController'. Необязательный параметр должен быть ссылочным типом, нулевым типом или объявлен как необязательный параметр.
Имя параметра: параметры
Описание: Неизвестное исключение произошло во время выполнения текущего веб -запроса. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где он возник в коде. public class CustomersController : Controller
{
private ApplicationDbContext _context;
public CustomersController()
{
_context = new ApplicationDbContext();
}
protected override void Dispose(bool Disposing)
{
_context.Dispose();
}
// GET: Customers
[Route("customers")]
public ActionResult CustomersList()
{
var customers = _context.Customers.Include(c => c.MembershipType).ToList();
var viewModel = new CustomersIndexViewModel
{
Customers = customers
};
return View(viewModel);
}
[Route("customers/{id}")]
public ActionResult CustomerDetails(int id)
{
var customer = _context.Customers.Include(m => m.MembershipType)
.SingleOrDefault(c => c.Id == id); //Eager loading
var viewModel = new CustomerDetailsViewModel
{
Name = customer.Name,
MembershipType = customer.MembershipType,
Birthdate = customer.Birthdate
};
return View(viewModel);
}
[Route("customers/new")]
public ActionResult New()
{
var membershipTypes = _context.MembershipTypes.ToList();
var viewModel = new NewCustomerViewModel()
{
MembershipTypes = membershipTypes,
Customer = new Customer()
};
return View("New", viewModel);
}
[HttpPost]
public ActionResult Create(Customer customer)
{
_context.Customers.Add(customer);
_context.SaveChanges();
return RedirectToAction("CustomersList", "Customers");
}
< /code>
Теперь, когда я нажимаю кнопку, просто чтобы ввести представление для добавления нового клиента, она открывается нормально.
Но когда я пытаюсь нажать кнопку «Сохранить», я получаю ошибку, которую я опубликовал выше.
Я даже пробовал, изменяя код в методе «Создать», даже просто для публикации 404.return HttpNotFound();
< /code>
Итак, как я понимаю, метод создания даже не доходит до той части чего-либо, он просто сбои. PrettyPrint-Override ">@model VidlyExercise1.ViewModels.NewCustomerViewModel
@{
ViewBag.Title = "New";
Layout = "~/Views/Shared/_Layout.cshtml";
}
New Customer
@using (Html.BeginForm("Create", "Customers", FormMethod.Get))
{
@Html.LabelFor(m => m.Customer.Name)
@Html.TextBoxFor(m => m.Customer.Name, new { @class = "form-control" })
@Html.LabelFor(m => m.Customer.Birthdate)
@Html.TextBoxFor(m => m.Customer.Birthdate, new { @class = "form-control" })
@Html.CheckBoxFor(m => m.Customer.IsSubscribedToNewsLetter) Subscribed to newsletter
@Html.LabelFor(m => m.Customer.MembershipTypeId)
@Html.DropDownListFor(m => m.Customer.MembershipTypeId,
new SelectList(Model.MembershipTypes, "Id", "Name"),
"Select Membership Types", new { @class = "form-control" })
@Html.HiddenFor(m=>m.Customer.Id)
Save
}< /code>
< /div>
< /div>
< /p>
Я думаю, что пример кода от наставника на Github почти идентичен. Представление HTML отличается, потому что он также включает в себя дополнительные уроки, но код контроллера кажется правильным. < /P>
Я знаю, что есть необходимость опубликовать то, что я уже пробовал. Я искал потенциальные исправления и попробовал некоторые из них, но проблема в том, что я не знаю, что я ищу.@using (Html.BeginForm("Search", "Person",FormMethod.Get))
< /code>
Не используйте переменную «id» в ActionResult CustomerList: я никогда не использовал ее. Опять же, самому трудно найти ошибку, так как я только недавно начал изучать asp.net.
и еще один вопрос: кнопка «Создать» должна получить «клиент» откуда -то, но где в коде просмотра я на самом деле «отправляю» ее?
Подробнее здесь: https://stackoverflow.com/questions/659 ... ionary-con
Попытка добавить новые данные в таблицу приводит к ошибке: Словарь параметров содержит нулевую запись для параметра «иде ⇐ Html
Программисты Html
1751747064
Anonymous
Я беру курс ASP.NET UDEMY. К сожалению, это старый курс, и я не верю, чтобы получить там ответ. < /P>
Теперь, что именно происходит. На этом этапе курса мне нужно работать с клиентами. Часть, которая должна показывать список клиентов или детали конкретного клиента, работают нормально. Однако, когда я пытаюсь добавить нового клиента в базу данных, приложение сбои. 'VidlyExcise1.controllers.customersController'. Необязательный параметр должен быть ссылочным типом, нулевым типом или объявлен как необязательный параметр.
Имя параметра: параметры
Описание: Неизвестное исключение произошло во время выполнения текущего веб -запроса. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где он возник в коде. public class CustomersController : Controller
{
private ApplicationDbContext _context;
public CustomersController()
{
_context = new ApplicationDbContext();
}
protected override void Dispose(bool Disposing)
{
_context.Dispose();
}
// GET: Customers
[Route("customers")]
public ActionResult CustomersList()
{
var customers = _context.Customers.Include(c => c.MembershipType).ToList();
var viewModel = new CustomersIndexViewModel
{
Customers = customers
};
return View(viewModel);
}
[Route("customers/{id}")]
public ActionResult CustomerDetails(int id)
{
var customer = _context.Customers.Include(m => m.MembershipType)
.SingleOrDefault(c => c.Id == id); //Eager loading
var viewModel = new CustomerDetailsViewModel
{
Name = customer.Name,
MembershipType = customer.MembershipType,
Birthdate = customer.Birthdate
};
return View(viewModel);
}
[Route("customers/new")]
public ActionResult New()
{
var membershipTypes = _context.MembershipTypes.ToList();
var viewModel = new NewCustomerViewModel()
{
MembershipTypes = membershipTypes,
Customer = new Customer()
};
return View("New", viewModel);
}
[HttpPost]
public ActionResult Create(Customer customer)
{
_context.Customers.Add(customer);
_context.SaveChanges();
return RedirectToAction("CustomersList", "Customers");
}
< /code>
Теперь, когда я нажимаю кнопку, просто чтобы ввести представление для добавления нового клиента, она открывается нормально.
Но когда я пытаюсь нажать кнопку «Сохранить», я получаю ошибку, которую я опубликовал выше.
Я даже пробовал, изменяя код в методе «Создать», даже просто для публикации 404.return HttpNotFound();
< /code>
Итак, как я понимаю, метод создания даже не доходит до той части чего-либо, он просто сбои. PrettyPrint-Override ">@model VidlyExercise1.ViewModels.NewCustomerViewModel
@{
ViewBag.Title = "New";
Layout = "~/Views/Shared/_Layout.cshtml";
}
New Customer
@using (Html.BeginForm("Create", "Customers", FormMethod.Get))
{
@Html.LabelFor(m => m.Customer.Name)
@Html.TextBoxFor(m => m.Customer.Name, new { @class = "form-control" })
@Html.LabelFor(m => m.Customer.Birthdate)
@Html.TextBoxFor(m => m.Customer.Birthdate, new { @class = "form-control" })
@Html.CheckBoxFor(m => m.Customer.IsSubscribedToNewsLetter) Subscribed to newsletter
@Html.LabelFor(m => m.Customer.MembershipTypeId)
@Html.DropDownListFor(m => m.Customer.MembershipTypeId,
new SelectList(Model.MembershipTypes, "Id", "Name"),
"Select Membership Types", new { @class = "form-control" })
@Html.HiddenFor(m=>m.Customer.Id)
Save
}< /code>
< /div>
< /div>
< /p>
Я думаю, что пример кода от наставника на Github почти идентичен. Представление HTML отличается, потому что он также включает в себя дополнительные уроки, но код контроллера кажется правильным. < /P>
Я знаю, что есть необходимость опубликовать то, что я уже пробовал. Я искал потенциальные исправления и попробовал некоторые из них, но проблема в том, что я не знаю, что я ищу.@using (Html.BeginForm("Search", "Person",FormMethod.Get))
< /code>
Не используйте переменную «id» в ActionResult CustomerList: я никогда не использовал ее. Опять же, самому трудно найти ошибку, так как я только недавно начал изучать asp.net.
и еще один вопрос: кнопка «Создать» должна получить «клиент» откуда -то, но где в коде просмотра я на самом деле «отправляю» ее?
Подробнее здесь: [url]https://stackoverflow.com/questions/65982383/trying-to-add-new-data-to-table-leads-to-an-error-the-parameters-dictionary-con[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия