我正在构建一个个人资料页面,其中包含与特定模型(租户)相关的多个部分 - 关于我、我的偏好等。每个部分都将是一个局部视图,以允许使用 AJAX 进行局部页面更新。
当我在 TenantController 中单击一个 ActionResult 时,我能够创建一个强类型视图,并将模型数据传递给视图。但是我无法通过局部视图实现这一点。
我已经创建了一个局部视图 _TenantDetailsPartial:
我随后有一个视图
如果我将
当我从
当我在 TenantController 中单击一个 ActionResult 时,我能够创建一个强类型视图,并将模型数据传递给视图。但是我无法通过局部视图实现这一点。
我已经创建了一个局部视图 _TenantDetailsPartial:
@model LetLord.Models.Tenant
<div class="row-fluid">
@Html.LabelFor(x => x.UserName) // this displays UserName when not in IF
@Html.DisplayFor(x => x.UserName) // this displays nothing
</div>
我随后有一个视图
MyProfile
,用于呈现上述的局部视图:@model LetLord.Models.Tenant
<div class="row-fluid">
<div class="span4 well-border">
@Html.Partial("~/Views/Tenants/_TenantDetailsPartial.cshtml",
new ViewDataDictionary<LetLord.Models.Tenant>())
</div>
</div>
如果我将
_TenantDetailsPartial
DIV 内的代码放在 @if(model != null){}
中,页面上什么都不会显示,所以我猜测一个空模型被传递给了视图。当我从
ActionResult
创建强类型视图时,为什么'Session'中的用户会被传递到视图中?如何将'Session'中的用户传递给不是从 ActionResult
创建的部分视图?如果我对概念有所遗漏,请解释一下。