如何解决我怎样才能让我的业务逻辑只执行一次,所以它只改变对象一次
我有以下业务逻辑:
public decimal Price
{
get {
if (OrderSize == Size.Small)
{
_price = decimal.Multiply(_price,(decimal)0.8);
}
else if (OrderSize == Size.Large)
{
_price = decimal.Multiply(_price,(decimal)1.2);
}
return _price;
}
set {
_price = value;
}
}
价格应仅根据所选的 OrderSize 更改一次。检索此订单时,它会再次计算价格,这显然不是我想要的。让它只执行一次的最佳方法是什么?
解决方法
离你不远了。不要再次分配_price变量,只需返回计算即可。
public decimal Price
{
get
{
if (OrderSize == Size.Small)
{
return decimal.Multiply(_price,(decimal)0.8);
}
else if (OrderSize == Size.Large)
{
return decimal.Multiply(_price,(decimal)1.2);
}
else
{
return _price;
}
}
set
{
_price = value;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。