繁体   English   中英

为了使pagedList返回到post操作,需要执行哪些操作?

[英]What needs to be in place in order to have a pagedList return to a post action?

我不会(再次)发布大量代码来尝试解决这个问题。 这是一个使用剃刀视图的asp.net MVC 3应用程序。 我只想知道什么才需要适当放置才能使用视图。

  @model IPagedList<Model>

将该模型作为参数发布回Post Action。 我已经在模型中尝试了无参数构造函数

   public Model model { get; set; }

还有这个

  public PagedList<Model> pagedList { get; set; }

并且仍然出现此错误。“没有为此对象定义无参数构造函数”

我认为我的发布操作应如下所示:

   public ActionResult Index(IPrincipal user, PagedList<Model> model)

但这会引发错误。 有人吗?我看过OS上的数十个问题,但似乎没有一个适合我项目的解决方案。

*****编辑***只是为了强调,我确实尝试添加此无参数的构造函数,但是仍然存在错误。

   public TrackerModel() { }

只是为了提供更多细节,此ViewModel TrackerModel在索引视图的局部视图中使用。 因此,获取索引ActionResult不会直接使用ViewModel,而是会使用其中包含的部分视图。 从控制器引用...

  public PartialViewResult AllCalibrations(int? page, IPrincipal user)

viewModel是通过Automapper从名为“ Calibration”的实体类映射的。

    Mapper.CreateMap<Calibration, TrackerModel>().ConvertUsing(new CalibrationToTrackerModel());

校准模型包含数据库中使用的所有虚拟属性。

您的Model类应类似于以下内容:

public class Model
{
     //some properties ...

     // parameterless constructor
     public Model() { }

     //constructor with params
     public Model(string id)
     {
     }
 }

问题是默认模型绑定器需要一个没有参数的构造函数来实例化模型。 如果您有充分的理由(您的情况中不需要),则可以用自定义模型联编程序替换它。 如果添加构造函数仍然无济于事,请告知我们-然后问题也出在其他地方。 但是拥有无参数构造函数和其他参数是第一步

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM