나는 ASP.net MVC 3을 사용하는 데 상당히 새로운 사람이기 때문에 나를 용서해 준다.ASP.net MVC 3 - 편집 도중 DropDownList가 업데이트되지 않습니까?
나는 두 개의 테이블을 가지고 있는데 하나는 계약서, 하나는 Sow라고 불린다. 계약에는 SOW를 가리키는 외래 키가 있습니다. 계약 세부 정보를 편집하고 선택할 수있는 다양한 SOW 레코드의 드롭 다운 목록을 제공 할 수 있습니다. 현재 코드 : 내 계약 컨트롤러에서
: 내 Edit.aspx에서
public ActionResult Edit(int id)
{
Contract contract = contractRepository.GetContract(id);
var db = new ManagementDataContext();
IEnumerable<SelectListItem> items = db.Sows
.Select(s => new SelectListItem()
{
Value = s.ID.ToString(),
Text = s.Title
});
ViewData["Sow"] = items;
return View(contract);
}
[HttpPost]
public ActionResult Edit(int id, FormCollection collection)
{
Contract contract = contractRepository.GetContract(id);
try
{
UpdateModel(contract);
contractRepository.Save();
return RedirectToAction("Details", new {id = contract.contractID});
}
catch
{
ModelState.AddRuleViolations(contract.GetRuleViolations());
var db = new ManagementDataContext();
IEnumerable<SelectListItem> items = db.Sows
.Select(s => new SelectListItem()
{
Value = s.ID.ToString(),
Text = s.Title
});
ViewData["Sow"] = items;
return View();
}
}
:
<%: Html.DropDownList("Sow") %>
목록은 값으로 채워집니다,하지만 난 갱신을 변경하고, 외부 키 변하지 않는다. 조언이나 도움이 필요하십니까? 또한, 현재 코드를 향상시킬 수있는 방식으로 던지고 싶다면?
다시 말해, ASP.net 지식 부족에 대해 사과 하긴하지만 손을 더럽 히고 실수를해서 배워야합니다.