Сохранить функциональность в столбце базы данных не сохраняется?
Привет Команда
У меня есть кнопка, которая позволяет пользователю создать имя курса, но моя функциональность для хранения этого значения в столбце базы данных, который у меня есть, не сохраняется и нуждается в некоторой помощи.
Что я уже пробовал:
// Модель
// db-schema lists. public class eNtsaCourses { [Key] public Guid? Id { get; set; } public string Course { get; set; } public string Nickname { get; set; } public string Term { get; set; } public string EnrolledAs { get; set; } public bool Published { get; set; } }
[Route("Home/CoursesRegistration")] public ActionResult CoursesRegistration( eNtsaRegCourses collection) { if(ModelState.IsValid) { cb.SaveChanges(); return RedirectToAction("Courses", "Home"); } return View(collection); }
//GET://Courses/Courses-All. [Route("Home/Courses")] public ActionResult Courses(string g)// Once user creates course, it must be stored { return View(g); }
// Вид
<div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button> <a class="btn btn-large btn-success" id="fire" href="@Url.Action("CoursesRegistration", "Home")">Create Courses</a> <script type="text/javascript" src="~/Scripts/jquery-3.4.1.js"></script> <script type="text/javascript"> $('#fire').on('click', function (e) { var url = '@Url.Action("CoursesRegistration", "eNtsaCourses")'; $(jQuery.noConflict); $('#ModalContent').load(url, function (html) { var form = $("#Modal-eNtsaCourses form"); $.validator.unobtrusive.parse(form); $("#Modal-eNtsaCourses").modal('show'); form.submit(function () { $.ajax({ url: this.action, type: this.method, data: $(this).serialize(), success: function (result) { $('#Modal-eNtsaCourses').modal('hide'); var content = '@Url.Action("Courses", "eNtsaCourses")'; $('#ViewCourses').load(content); } }); return false; }); }); }); </script> </div>
Gerry Schmitz
"Обнуляемый" первичный ключ? И у вас нет кода, который на самом деле делает "вставку".
gcogco10
я должен создать ActionResult добавить(курсы eNtsaCourse) {.... //логики, как ВАР сведения = дБ.eNtsaCourses.Добавить();?}
DerekT-P
Откуда вы знаете, что это "не спасение"? Какое исключение возникает? Может быть, это в сделке, которая не совершена? Может быть, вы ищете его не в том месте? Что такое "cb" и где код "SaveChanges"? (Судя по его названию, это, вероятно, тот бит, который нам нужно увидеть).
Я подозреваю, что если вы немного подумаете над этими вопросами, то сможете отладить его самостоятельно. Кстати, в разделе "Что я пробовал" мы действительно ожидаем увидеть шаги, которые вы уже предприняли для решения этой проблемы...)
gcogco10
Дерек проблема в том, что он не попадает в Httpost к моему контроллеру, так как он идет в сторону jquery. То, что я хочу именно тогда, когда пользователь нажимает на него, должно сработать и сохранить эти данные в моей таблице. в настоящее время это не так.
DerekT-P
Затем пройдите через Javascript, чтобы узнать, почему нет. Вы не сказали нам, что такое #fire, какую форму вы пытаетесь представить, или не описали, что должно произойти на самом деле. Вам придется сделать это - и даже больше - или решить проблему самостоятельно.