我有一个Customer表和Approval表,如下所示。我创建了我的客户控制器和视图及其工作。在CustomerView.cshtml
中,用户无法看到CustActive
列。
现在我需要创建一个带过滤的ApprovalController
。在Approval.cshtml
页面中,当我单击“创建”按钮时,我需要加载包含客户名称和姓氏的组合框CustActive = False
。然后,当我从ComboBox中选择一个客户时,我想创建将激活以进行编辑的CustId
,ManagerName
和ManagerSurname
等列。编辑后,我需要保存审批表的数据,并在客户表中为CustActive
列插入真值。
我该怎么做?
CUSTOMER TABLE
CustId
Name
Surname
CustActive
APPROVAL TABLE
AppId
CustId
ManagerName
ManagerSurname
亲切的问候
答案 0 :(得分:1)
好的,您需要在APPROVAL TABLE中插入costumer属性吗? 现在,在您创建了costumer之后,您已将active定义为false,这没关系,在此之后您已经编写了这样的APPROVAL控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Create([Bind(Include = "AppId,CustId,ManagerName,ManagerSurname")] Approval approval, string id)
{
var costumer = await db.Costumers.SingleAsync(x => x.CustId == id);
if (ModelState.IsValid)
{
approval.CustId = id;
CUSTOMER model = new CUSTOMER();
model.CustActive = true;
db.Entry(model).State = EntityState.Modified;
db.Categories.Add(category);
await db.SaveChangesAsync();
return RedirectToAction("Index");
}
return View(approval);
}