我正在开始一个新的 MVC 项目,并且众所周知,每个视图都需要下一个项目:用户语言、时区和一些涉及城市、国家/地区等的用户设置。因此,我将创建一些基本实体来放置它特性。但是某些视图将是 PagedList 的类型(来自开源 MvcPaging 库的类)。而且我不确定如何将 Base 模型和 PagedList 组合在一个对象中?我感谢接口,但我读到它比使用类更复杂。
问问题
1766 次
1 回答
1
听起来你应该研究继承:
public class BaseModel
{
public string UserLanguage { get; set; }
...
}
public class SomePageModel : BaseModel
{
public int Id { get; set; }
public PagedList<Whatever> PagedStuff { get; set; }
...
}
在这种情况下SomePageModel
,继承 的所有属性BaseModel
。您不需要将 PagedList 用作模型。您可以使用 SomePageModel 作为视图的模型,该视图位于 PagedList 内部。在这种情况下,您将在视图中编写:
@model [namespace].SomePageModel
//to access paged stuff:
@Model.PagedStuff
但实际上,您的问题很幸运,并且很难根据您迄今为止提供的信息将您引导到正确的方向。
于 2012-12-22T11:08:47.120 回答