为什么没有身份无法添加事件

问题描述 投票:0回答:1

我从数据库中删除身份,但是当我想添加事件时,他无法插入数据库我不知道问题出在什么地方,尽管我用身份工作来更改数据库。

enter image description here

                                         var data = {
                            EventID: $('#hdEventID').val(),
                            EventTitle: $('#txtSubject').val().trim(),
                            StartDate: $('#txtStart').val().trim(),
                            EndDate: $('#chkIsFullDay').is(':checked') ? null : $('#txtEnd').val().trim(),
                            EventDescription: $('#txtDescription').val(),
                            ThemeColor: $('#ddThemeColor').val(),
                            IsFullDay: $('#chkIsFullDay').is(':checked')
                        }
                        SaveEvent(data);
                        // call function for submit data to the server
                    })

                    function SaveEvent(data) {
                        $.ajax({
                            type: "POST",
                            url: '/home/SaveEvent',
                            data: data,
                            success: function (data) {
                                if (data.status) {
                                    //Refresh the calender
                                    FetchEventAndRenderCalendar();
                                    $('#myModalSave').modal('hide');
                                }
                            },
                            error: function () {
                                alert('Failed');
                            }
                        })
                    }
                })

这是我在asp mvc中的控制器:

        [HttpPost]
    public JsonResult SaveEvent(Event e)
    {
        var status = false;
        using (Entities db = new Entities())
        { 
            if (e.EventID > 0)
            {
                //Update the event
                var v = db.Events.Where(a => a.EventID == e.EventID).FirstOrDefault();
                if (v != null)
                {
                    v.EventTitle = e.EventTitle;
                    v.StartDate = e.StartDate;
                    v.EndDate = e.EndDate;
                    v.EventDescription = e.EventDescription;
                    v.ThemeColor = e.ThemeColor;

                }
            }

            else
            {
                db.Events.Add(e);
            }
            db.SaveChanges();
            status = true;
        }

        return new JsonResult { Data = new { status = status } };
    }

帮助我使事件添加时不带标识:

jquery asp.net-mvc asp.net-ajax
1个回答
0
投票

如果关闭了自动递增身份,则必须手动设置EventID,因为它是您的主键。在从数据库中读取最大ID并将事件ID设置为max + 1,然后再将其添加到数据库。

© www.soinside.com 2019 - 2024. All rights reserved.