ASP.NET MVC读写集属性

时间:2017-02-03 17:47:58

标签: c# asp.net-mvc

可能会问这个问题,如果有的话,请随意指出我正确的方向。

我有一个View Model,其属性如下所示:

private decimal _paymentAmountPaid;
public decimal PaymentAmountPaid
{
    get { return CalPaymentAmountPaid(); }
    set
    {
        _paymentAmountPaid = value;
    }
}

当视图加载时,它会在控件(剑道数字文本框)中显示我想要的正确数量。但是,如果用户更改了文本框中的值,例如100到150,它仍然会发布值100.如何让它发布用户将其更改为的值?

1 个答案:

答案 0 :(得分:1)

在你的getter中,你不会返回用户设置的值,但会再次计算该值:

get { return CalPaymentAmountPaid(); } // always calculates the value

如果用户设置了值,您可能应该稍后返回本地值:

private decimal _paymentAmountPaid;
private bool _userSetValue;
public decimal PaymentAmountPaid
{
    get { return _userSetValue ? _paymentAmountPaid : CalPaymentAmountPaid(); }
    set
    {
        _userSetValue = true;
        _paymentAmountPaid = value;
    }
}