如何在mvc4中初始化视图模型

本文关键字:初始化 视图 模型 mvc4 | 更新日期: 2023-09-27 18:04:39

假设我有以下模型和一个Index动作方法。

public class detailsbyclientIdviewModel
{
    public int upldId { get; set; }
    public IPagedList<detailsbyClientId> detailsbyclientId { get; set; }
    public IEnumerable<Metadata> metadata { get; set; }
    public IEnumerable<int> Ids { get; set; }
    public IEnumerable<Records> records { get; set; }
}

我有一个动作方法,如下所示。

public ActionResult Index(detailsbyclientIdviewModel model)
{
    documentVerificationBAL objBAL = new documentVerificationBAL();
    string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
    List<Records> documentstobeVerified = objBAL.getverificationRecords();
    //Assigning recieved data to Model
    model = new detailsbyclientIdviewModel()
    {
        records = documentstobeVerified,
        detailsbyclientId=new IPagedList<detailsbyclientId>()
    };
    return View(model);
}

我有许多操作方法和检索数据在视图中。我有详细的客户编号。在我看来,有些属性。当第一次页面运行时,我得到错误,如对象未初始化(绝对持有null值)。如何初始化这些属性呢?

如何在mvc4中初始化视图模型

我不认为你必须使用模型作为输入的动作,以便将其作为输入返回到视图。试一试:

public ActionResult Index()
    {
        documentVerificationBAL objBAL = new documentVerificationBAL();
        string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
        List<Records> documentstobeVerified = objBAL.getverificationRecords();
        //Assigning recieved data to Model
        detailsbyclientIdviewModel  model = new detailsbyclientIdviewModel()
        {
            records = documentstobeVerified,
            detailsbyclientId=new IPagedList<detailsbyclientId>()
        };
        return View(model);
    }