我已经为几个商店创建了一个填写问卷的应用程序,该应用程序在数据库中有几个表。其中两个是我关注的审计和存储问题。 Audit表包含商店的数据,例如:storename,其主键为“AuditId”。 storesquestion表包含所有问卷表和AuditId作为Audit表的外键。 我想创建一个只读复选框作为指示,以便找出哪些商店已完成调查问卷,因为我知道哪个已完成调查问卷的方法是通过查看数据库。我解决这个问题的方法是在Audit表中使用布尔数据类型创建一个名为只读的新列,因此当商店完成调查问卷时,它会将只读行设置为1(true)。 可以做一些帮助,因为我现在似乎没有前进
提前致谢
public ActionResult Create()
{
StoreQuestions sq = new StoreQuestions();
sq.AuditId = (int)System.Web.HttpContext.Current.Session["AuditId"];
return View(sq);
}
//
// POST: /StoreQuestions/Create
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(StoreQuestions storequestions)
{
if (ModelState.IsValid)
{
db.StoreQuestions.Add(storequestions);
db.SaveChanges();
return RedirectToAction("Details", "Audit", new { id = storequestions.AuditId });
}
return View(storequestions);
}
视图模型
public class MainModel
{
public StoreAudit StoreAudit { get; set; }
public StoreQuestions StoreQuestion { get; set; }
public List<StoreAudit> StoreAuditList { get; set; }
public List<StoreQuestions> StoreQuestionsList { get; set; }
public List<User> User { get; set; }
public List<string> StoreWindow { get; set; }
}
}
答案 0 :(得分:0)
好吧,我想我明白你要做什么。要将readonly
属性更新为true
,您必须找到审核记录,然后更改该记录的readonly
属性的值。
像这样:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(StoreQuestions storequestions)
{
if (ModelState.IsValid)
{
Audit findingAudit = db.AuditTable.Find(storequestions.AuditId);
// db being your connectionstring property
findingAudit.readonly = true;
db.StoreQuestions.Add(storequestions);
db.SaveChanges();
return RedirectToAction("Details", "Audit", new { id = storequestions.AuditId });
}
return View(storequestions);
}
我希望这有帮助!