【发布时间】:2012-07-10 23:01:30
【问题描述】:
我不知道如何在我发布后让我的模型 (EF4) 的导航属性不为空。我在几个基本页面上遇到了同样的问题。
即我有一张桌子 估计 外键为 LoginID(来自 Login 表)。
在我的 HTTPGet Edit 方法中,我找到了我想要的具体估算:
Estimate estimate = db.Estimates.Find(id)
从这里我可以访问登录导航属性以及登录表中该记录的任何属性。
我将此估计作为强类型视图的模型传递。当我的 HTTPPost Edit 方法被调用(并且模型作为参数传递给它)时,我的 Login 导航属性为空,我无法访问其中的任何内容。我当然可以绕过它,因为我的估算类中确实有 LoginID 字段,但感觉真的很笨重,就像我错过了实体框架的一个关键好处。
我在多个页面上遇到了同样的问题,我将带有导航属性的模型传递给我的视图,而视图正在返回带有空导航属性的模型。
下面是我遇到问题的代码示例:
[HttpPost]
public ActionResult Edit(Estimate estimate)
{
var test = estimate.Login.CompanyProfileID;
...
我可以在视图中访问 Model.Login 及其所有属性,因此我知道它已正确传递给视图。当我的表单提交时,它只是不会将导航属性传递回控制器。
【问题讨论】:
-
你能发布视图和模型代码吗?
-
您的视图是否绑定到导航模型或者您有一些视图模型,这就是为什么您需要向我们展示您的视图代码
标签: asp.net-mvc-3 entity-framework