MVC의보기에 여러 모델을 보내는 데 어려움을 겪고 있습니다. 내 문제는 다음과 같습니다.MVC에서 드롭 다운의 데이터로 엔티티를 편집하려고 시도했습니다.
EF4를 사용하여 범주별로 구성된 특성이있는 테이블이 있습니다.
가 :-(이미지를 게시 할 수 없습니다 내가 원하는 무엇
은 할 수 [표라는 카테고리 (CategoryTitle).에 연결된 테이블이라는 특성 (AttributeTitle, AttributeName을, 카테고리 ID) 적이]입니다 속성 개체를 편집하고 선택할 수있는 범주 드롭 다운을합니다.
나는 사용자 정의 뷰 모델
public class AttributeViewModel
{
public AttributeViewModel()
{
}
public Attribute Attribute { get; set; }
public IQueryable<Category> AllCategories { get; set; }
}
을 만들려고하지만, 그냥 엉망 었죠.
,536을<div class="editor-field">
<%: Html.DropDownList("Category", new SelectList((IEnumerable)Model.AllCategories, "CategoryID", "CategoryName")) %>
</div>
내가 컨트롤러에 다시 그것을 얻고 있었다...
[HttpPost]
public ActionResult Edit(int AttributeID, FormCollection formcollection)
{
var _attribute = ProfileDB.GetAttribute(AttributeID);
int _selcategory = Convert.ToInt32(formcollection["Category"]);
_attribute.CategoryID = (int)_selcategory;
try
{
UpdateModel(_attribute); (<---Error here)
ProfileDB.SaveChanges();
return RedirectToAction("Index");
}
catch (Exception e)
{
return View(_attribute);
}
}
나는 코드를 디버깅 한 내 _attribute 정확한 모양과 _attribute.CategoryID는 = (INT)는 _selcategory 모델을 업데이트하지만 다음 오류가 발생합니다.
여기 어딘가에서이 작업을보다 명확하게 수행해야하며, 사용자 정의보기 모델을 만드는 대신보기에 두 개의 모델 만 보낼 수 있다고 생각합니다.
총계 : 내 속성을 편집하고 사용 가능한 모든 카테고리를 드롭 다운하고 싶습니다.
많은 도움을 주셨습니다.
오류 메시지가 도움이됩니다. – jfar
죄송합니다, 지금까지 귀하의 의견을 보지 못했습니다. 그것은 "유형의 모드를 업데이트 할 수 없습니다 ... 속성"과 같은 것을 말했습니다. 내가 updatemodel하려고 노력하고 있었다는 사실 때문이었습니다. – bek