为一个简单的折扣客户端构建一个用户界面
本文关键字:一个 客户端 构建 用户界面 简单 | 更新日期: 2023-09-27 18:29:48
在我的域中有产品实体和几个折扣装饰器。
// the client
[Test]
public void ChainedDiscountShouldWork() {
// arrange
var product = new SimpleProduct {
Id = Guid.NewGuid(),
PricePerPiece = 10M,
SelectedQuantity = 10,
Title = "simple product"
};
var itemsToApplyTheDiscount = 5;
var itemsYouGetFree = 2;
var discountPercentage = 0.3M;
var discountA = new BuyXGetYFreeDecorator(product, itemsToApplyTheDiscount, itemsYouGetFree);
var discountB = new FixedDiscountDecorator(discountA, discountPercentage);
// act
var totalCost = discountB.CalculateCost();
// assert
Assert.AreEqual(42M, totalCost);
}
我如何构建UI,以便像在测试中那样应用(连锁)折扣?
我可以在创建新产品的阶段展示一份折扣计划列表decorators构造函数的签名不同。不知道如何普遍利用这一点。
好的。可以使用Builder
模式。需要一个例子。
需要建议。您将如何在web UI(在我的案例中为ASP.NET MVC
)上实现这一点?
也许你应该了解一下部分视图的概念,这篇文章会对你有所帮助。http://rachelappel.com/razor/partial-views-in-asp-net-mvc-3-w-the-razor-view-engine/
在App.config中保留折扣数据是可以的,但可以更改或更新,因此请确保用户对其有一定的访问权限。在Live环境中,我们不应该过多地操作配置,那么把它放在DB中怎么样?我会这么做,把它放在数据库里。