viewmodel에 문제가 있습니다. 나는 방법을 만들고, 포스트 인 방법을 만든다. 내 viewmodel에서 ProjectModel과 ActivityLogModel의 두 클래스를 보냈습니다. 내가 겪고있는 문제는 아래의 오류입니다. ProjectViewModel로 데이터를 다시 원하지만 ProjectModel에서 가져온 데이터입니다. 데이터를 올바른 유형으로 반환하도록이 문제를 어떻게 해결합니까?MVC에서 잘못된 유형이 반환되었습니다.
사전에 전달 모델 항목 유형 'GlobalNaming.Models.ProjectModel'의이지만,이 사전은 유형의 모델 항목 'GlobalNaming.Models.ProjectViewModel'을 필요로한다.
첫 metod 당신 return
ProjectViewModel
에서와 secund metod의 뷰 모델
public List<ProjectModel> Project { get; set; }
public List<ActivityLogModel> Activity { get; set; }
컨트롤러
public ActionResult Create()
{
ProjectViewModel projectvm = new ProjectViewModel();
ProjectModel project = new ProjectModel();
project.ProjectOwner = UserName;
project.Description = _description;
project.Timing = _timing;
project.Availability = _availability;
project.Positioning = _positioning;
project.Competitor = _competitor;
projectvm.Project = project;
return View(projectvm);
}
[HttpPost]
public ActionResult Create(ProjectModel pm, HttpPostedFileBase files)
{
pm.CreatedDate = dtNow;
pm.UpdatedDateTime = dtNow;
pm.ProjectStatus = "Initiation";
pm.Rejected = false;
if (ModelState.IsValid)
{
db.Projects.Add(pm);
db.SaveChanges();
UpdateSupportDocs(pm, files);
return RedirectToAction("Index");
}
return View(pm);
}
{'... 만들기 (ProjectModel ProjectModel ...'} - 오류가 발생하면' – qJake
를 클래스 정의와 같은 이름을보기 (오후) 반환하지 마십시오 '<- 그건'ProjectViewModel'이 아닙니다. –
당신의 변수 – jrummell