Asp.net mvc mvc模型到动作的传递方法

Asp.net mvc mvc模型到动作的传递方法,asp.net-mvc,asp.net-mvc-4,asp.net-mvc-5,Asp.net Mvc,Asp.net Mvc 4,Asp.net Mvc 5,我使用的是MVC5,有一个页面可以列出合同的付款情况。有时合同没有相关的付款。“我的视图”将模型引入列表: @model List<MyProject.Models.PaymentViewModel> 现在GetPaymentsForActiveContract返回一个列表,当我使用 @Html.Partial("partialviews/_Payments") 依我看。但我现在要做的是调用另一个action方法,它将返回一个视图,该视图将显示一个付款表,或者另一个视图将在不存在

我使用的是MVC5,有一个页面可以列出合同的付款情况。有时合同没有相关的付款。“我的视图”将模型引入列表:

@model List<MyProject.Models.PaymentViewModel>
现在GetPaymentsForActiveContract返回一个列表,当我使用

@Html.Partial("partialviews/_Payments")
依我看。但我现在要做的是调用另一个action方法,它将返回一个视图,该视图将显示一个付款表,或者另一个视图将在不存在付款的情况下写出“无”

我将该行动定义为:

        public ActionResult GetPayments(List<PaymentViewModel> payments)
    {
        if (payments.Count > 0)
        {
            return PartialView("partialviews/_Payments", payments);
        }
        return PartialView("partialviews/_NoPayments");
    }
public ActionResult GetPayments(列出付款)
{
如果(payments.Count>0)
{
返回PartialView(“PartialView/_Payments”,Payments);
}
返回部分视图(“部分视图/无付款”);
}

在我看来,我不确定如何将模型传递到这个操作中。我正在浏览@Html方法,但似乎找不到任何允许我调用GetPayments方法的方法,该方法传入模型并使其返回部分视图。

如果要从视图调用控制器操作,可以使用

@Html.Action() 
方法并将付款列表作为路线值传递

@{
    var paymentsList = new List<PaymentViewModel> {new PaymentViewModel(), new PaymentViewModel()};
}

@Html.Action("GetPayments", new { payments = paymentsList })
@{
var paymentsList=新列表{new PaymentViewModel(),new PaymentViewModel()};
}
@Action(“GetPayments”,new{payments=paymentsList})

如果要从视图调用控制器操作,可以使用

@Html.Action() 
方法并将付款列表作为路线值传递

@{
    var paymentsList = new List<PaymentViewModel> {new PaymentViewModel(), new PaymentViewModel()};
}

@Html.Action("GetPayments", new { payments = paymentsList })
@{
var paymentsList=新列表{new PaymentViewModel(),new PaymentViewModel()};
}
@Action(“GetPayments”,new{payments=paymentsList})

我刚刚让它工作了,我还可以通过@Html.Action(“GetPayments”,new{payments=Model})在视图中传递它。我刚刚让它工作了,我还可以通过@Html.Action(“GetPayments,new{payments=Model})在视图中传递它