【发布时间】:2011-10-01 11:57:27
【问题描述】:
@Html.Partial 的重载需要一个模型,所以在“主要”视图中我放入了 this.model:
@Html.Partial("_GenericIndex", this.Model )
我尝试将@Model 放在局部视图中以查看是否有任何显示,但我什么也没得到。
那么,如何在局部视图中使用 this.Model 参数?我已经看到了一些可怕的解决方案,特别是为 viewdata 中的部分视图或其他东西准备了它。确定没有必要?
我只想访问我输入的 Html.Partial 参数。
顺便说一下,我的控制器和动作是这样的:
public class TestController : Controller
{
IRepository<Customer> customerrepo = RepositoryFactory.GetRepository<Customer>();
//
// GET: /Test/
public ActionResult Index()
{
Customer cust = customerrepo.GetByID("1");
return View(cust);
}
}
【问题讨论】:
-
Arg,在这个测试中,数据库中一直没有 ID 为“1”的客户对我没有帮助...
-
谢谢大家,我现在对系统有了更深入的了解。由于我试图制作一个通用视图,我最终使用 ViewBag 动态传递模型。我还通过在我的通用控制器操作中调用它来将所选模型的模型元数据添加到 ViewBag:ModelMetadata entitymetadata = ModelMetadataProviders.Current.GetMetadataForType(() => item, typeof(T));
-
更新:我正在切换到使用动态模型以努力获得通用视图:IList
list = Repository.GetAll();动态模型=列表;返回视图(模型);
标签: asp.net-mvc-3 partial-views