在编辑模式下显示数据

时间:2013-04-11 05:44:52

标签: asp.net asp.net-mvc asp.net-mvc-3

我的模型返回11行。我使用的是ADO.NET entity datamodel.edmx file 我在模型浏览器中导入stored proceduresfunction 设计器代码具有GetMonthlyAwardsToEvaluate_Result

在我看来,我只是调用模型而scafold template使用了我编辑。

我收到此错误...

异常详细信息:

System.InvalidOperationException: The model item passed into the dictionary is of type 
'System.Collections.Generic.List`
1[TestingPMO_RR.Models.GetMonthlyAwardsToEvaluate_Result]', 
 but this dictionary requires a model item of type 
'TestingPMO_RR.Models.Evaluations.EvaluationModel'.

Model.cs:

public List<GetMonthlyAwardsToEvaluate_Result> GetMonthlyEvaluation(int intAwardId, 
                                            string strAssociateId, string strStatus)
{
   return ctx.GetMonthlyAwardsToEvaluate(intAwardId, strAssociateId, strStatus).ToList();
}

Controller.cs:

public ActionResult ApproveNomination(int ? intAwardId, EvaluationModel eval)
{
   intAwardId = 4;
   eval.AwardId = Convert.ToInt16(intAwardId);
   eval.Status = "PENDING";
   var model = eval.GetMonthlyEvaluation(eval.AwardId, eval.strPendingWith, eval.Status);
   return View(model);
}

查看

@model TestingPMO_RR.Models.Evaluations.EvaluationModel

请帮助.................

模型从存储过程返回11行................

1 个答案:

答案 0 :(得分:1)

您正在将List<GetMonthlyAwardsToEvaluate_Result>传递给视图,因为这是GetMonthlyEvaluation方法返回的内容。所以你的观点应该强烈地输入同一个模型:

@model List<TestingPMO_RR.Models.GetMonthlyAwardsToEvaluate_Result>

顺便说一下,你得到的错误信息就是告诉你:

  

传递到字典中的模型项是类型的   'System.Collections.Generic.List`1 [TestingPMO_RR.Models.GetMonthlyAwardsToEvaluate_Result]',   但是这个字典需要一个类型的模型项   'TestingPMO_RR.Models.Evaluations.EvaluationModel'