0

我想在 asp.net mvc 中从(服务器端)模型自动插入用户名、用户 ID、日期这样的东西我如何插入这样的模型?

public class Enquiry
{
    public int ID { get; set; }
    public DateTime Date { get; set; }
    [Required]
    public string Name { get; set; }
    public string Contactno { get; set; }
    public string Remarks { get; set; }
    public string UserId { get; set; }
    public string UserName { get; set; }
    public string Editdate { get; set; }
    public string status { get; set; }


}

public class EnquiryDBContext : DbContext
{
    public DbSet<Enquiry> Enquiries { get; set; }

}

如何从控制器或模型中插入日期而不从视图中插入?

我的控制器是这样的

    [HttpPost]
    public ActionResult Create(Enquiry enquiry)
    {
        if (ModelState.IsValid)
        {

            db.Enquiries.Add(enquiry);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(enquiry);
    }
4

1 回答 1

2

公里,

只需在操作中填充日期,HttpGet然后将其传递给视图。这是一个片段:

控制器:

[HttpGet]
public ActionResult Create()
{
    Enquiry enquiry = new Enquiry();
    enquiry.Date = DateTime.UtcNow;
    // set any other required properties
    return View(enquiry);
}

在您的创建视图中:

// ref to base model
@model yournamespace.Models.Enquiry

// add the date from the controller as a hidden field
@Html.HiddenFor(m => m.Date)
<!-- other properties -->

然后,只需HttpPost像以前一样使用您的操作方法-瞧!

于 2012-07-27T09:12:37.843 回答