如何通过单击保存按钮获取表单值以发布控制器方法? [英] How do I get form values to post method of controller by clicking save button?

查看:66
本文介绍了如何通过单击保存按钮获取表单值以发布控制器方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在填写学生发行书表格,我在列表框控件中为同一个学生添加了多本书。我想将它们保存在数据库中。同一学生的不同问题ID各自保存在表中的不同书籍ID。

我也没有获得创建方法Student_Issue_BookObj的值



我尝试过的事情:



这里是控制器的post方法

I am filling student issue book form,in that form i adding multiple books for same student in list box control.and i want to save them in database.with different issue id of same student each save different book id's in table.
I am also not getting values at Student_Issue_BookObj of create method

What I have tried:

here is the post method of controller

 [HttpPost]
        public ActionResult Create(CustomBook1 Student_Issue_BookObj)
        {
            try
            {
                var Student_BookObj = Student_Issue_BookObj.CustomBook;
                //Student_Issue_BookObj.Last_Updated_By = CurrentUserID;
                //Student_Issue_BookObj.Last_Updated_Date = DateTime.Now.ToUniversalTime();
                //Student_Issue_BookObj.Created_By = CurrentUserID;
                //Student_Issue_BookObj.Creation_Date = DateTime.Now.ToUniversalTime();
                //Student_Issue_BookObj.Status = true;
                // var selectedBook = Student_BookObj.Where(a => a.Status == true).ToList();
                var selectedBook = Student_BookObj.ToList();

                foreach (var BookIssue in selectedBook)
                {
                    Student_Issue_Book CUSTOM_Book_IssueObj = new Student_Issue_Book();
                    CUSTOM_Book_IssueObj.Book_Id = BookIssue.Book_Id;

                    CUSTOM_Book_IssueObj.Class_Id = BookIssue.Class_Id;
                    CUSTOM_Book_IssueObj.Section_Id = BookIssue.Section_Id;
                    CUSTOM_Book_IssueObj.Book_Category_Id = BookIssue.Book_Category_Id;
                    CUSTOM_Book_IssueObj.Registration_Id = BookIssue.Registration_Id;
                    CUSTOM_Book_IssueObj.Roll_Id = BookIssue.Roll_Id;
                    CUSTOM_Book_IssueObj.Issue_Date = BookIssue.Issue_Date;
                    CUSTOM_Book_IssueObj.Return_Date = BookIssue.Return_Date;
                    CUSTOM_Book_IssueObj.Academic_year_Id = BookIssue.Academic_year_Id;
                    CUSTOM_Book_IssueObj.Last_Updated_By = CurrentUserID;
                    CUSTOM_Book_IssueObj.Last_Updated_Date = DateTime.Now.ToUniversalTime();
                    if (BookIssue.Issue_Return_Id > 0)
                    {
                        CUSTOM_Book_IssueObj.Issue_Return_Id = BookIssue.Issue_Return_Id;
                        if (_CRUDrepository.UpdateObjectInfo(CUSTOM_Book_IssueObj, "Issue_Return_Id"))
                        { }
                    }
                    else
                    {
                        if (_CRUDrepository.CreateNewObject(CUSTOM_Book_IssueObj, "Issue_Return_Id"))
                        { }
                    }

                }
                ModelState.AddModelError("", "All Authorization allocated successfully....");
                FillViewBag();
                Response.Redirect("Index");
                return View();

            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", "Error Allocating Authorization.." + ex.Message.ToString());
                FillViewBag();
                return View();
            }
        }

Here is my classes
   public class CustomBook1
        {
            public List<custombook> CustomBook { get; set; }
        }
        public class CustomBook
        {
            public long? Book_Id { get; set; }
         
            public DateTime? Issue_Date { get; set; }
            public DateTime? Return_Date { get; set; }
            public long? Academic_year_Id { get; set; }
            public long? Class_Id { get; set; }
            public long? Section_Id { get; set; }
            public long? Book_Category_Id { get; set; }
            public long? Roll_Id { get; set; }
            public bool Status { get; set; }
            public long? Registration_Id { get; set; }
             public long Issue_Return_Id { get; set; }
           
        }</custombook>

推荐答案

Googlemvc绑定到收藏品



模型绑定到列表 - 你已经Haacked [ ^ ]



BinaryIntellect知识库| .Net& Web开发 - 模型绑定到ASP.NET MVC中的对象列表 [ ^ ]
Google "mvc bind to collection"

Model Binding To A List - You've Been Haacked[^]

BinaryIntellect Knowledge Base | .Net & Web Development - Model Binding to List of Objects in ASP.NET MVC[^]


这篇关于如何通过单击保存按钮获取表单值以发布控制器方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆