在视图模型中显示来自模型的变量

Display variable from model in view Model

我试图通过使用视图模型在视图上显示变量 testing (= 55) 的值。有人可以帮忙吗?

Class (Calculations.cs):


using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace tool3.Models
{
    public class Calculations
    {
        public int Amount { get; set; }
    }
}

控制器(CalculationsController.cs):

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using tool3.Models;

namespace tool3.Controllers
{
    public class CalculationsController : Controller
    {
        public IActionResult Index()
        {
            var testing = new Calculations() { Amount = 55 };
            return View(testing);
        }
    }
}

视图模型(EFViewModel.cs):

using tool3.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace tool3.ViewModel
{
    public class EFViewModel
    {
        public Calculations Calculations { get; set; }
    }
}

索引视图(Index.cshtml),我只想在这里显示数字“55”:

@model tool3.ViewModel.EFViewModel

        @Model.Calculations.Amount

我收到错误:

System.NullReferenceException: 'Object reference not set to an instance of an object.' tool3.ViewModel.EFViewModel.Calculations.get 返回 null。

提前致谢

您需要将 EFViewModel 的实例作为模型传递给视图,因为这是视图所期望的类型。

public IActionResult Index()
{
    var testing = new EFViewModel() { Calculations = new Calculations() { Amount = 55 }};
    return View(testing);
}