首页 > 解决方案 > 不更新身份证

问题描述

我是asp.net 的新手,我有一个问题。我创建了一个简单的表单来发送短信,但是我的 id 始终保持为空。你能告诉我我做错了什么吗?我在另一个页面中使用了完全相同的表单,并且效果很好。

@model MessagingWebApplication.ViewModel.MessageViewModel

@{ ViewBag.Title = "New";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>New Sms</h2>

@using (Html.BeginForm("MessageStatus", "Message"))
{
    @Html.ValidationSummary()
    <div class="form-group">
        @Html.LabelFor(m => m.Message.Reciever)
        @Html.TextBoxFor(m => m.Message.Reciever, new { @class = "form-control" })
        @Html.ValidationMessageFor(m => m.Message.Reciever)
    </div>
    <div class="form-group">
        @Html.LabelFor(m => m.Message.Sender)
        @Html.TextBoxFor(m => m.Message.Sender, new { @class = "form-control" })
        @Html.ValidationMessageFor(m => m.Message.Sender)
    </div>
    <div class="form-group">
        @Html.LabelFor(m => m.Message.Body)
        @Html.TextBoxFor(m => m.Message.Body, new { @class = "form-control" })
        @Html.ValidationMessageFor(m => m.Message.Body)
    </div>

    @Html.HiddenFor(m => m.Message.Id)
    @Html.AntiForgeryToken()
    <button type="submit" class="btn btn-primary">Send</button>
}

My model
public class Message
    {
        [Key]
        public int Id { get; set; }

        [Required]
        public string Sender { get; set; }

        [Required]
        public string Reciever { get; set; }

        [Required]
        public string Body { get; set; }


    }

用于发送的方法

public ActionResult Send(Message message)
        {
            var viewModel = new MessageViewModel
            {
                Message = new Message()

            };
            _context.Add(message);
            _context.SaveChanges();
            _messageSender.Send(message);
            return View("MessageStatus", viewModel);
        }

_context.SaveChanges();我在这里SqlException: Cannot insert the value NULL into column 'Id', table 'MyDatabase.dbo.Messages'; column does not allow nulls. INSERT fails.

标签: asp.net-core

解决方案


我的问题是我在更新数据库时失败了,所以我只是按照如何从头开始删除和重新创建现有的 EF Code First 数据库


推荐阅读