首页 > 解决方案 > if/else 潜在大条件的最佳方法

问题描述

在 MVC 应用程序上工作。我有数百个用户。目前,如果我们的一些顶级用户(可能是 10 个)通过分配给他们的工作场所电子邮件登录,我正在尝试为他们提供折扣。价格中断显示在搜索结果、产品页面、购物车和结帐页面中。我必须尽快解决这个问题才能在假期期间破解它,所以目前我这样做的方式是这样的:

产品详情.aspx

if (user == "at@at.com") {
  Product. Price * 20
}
else {
 Product.Price
}

正如您所看到的,这暂时有效,但是我必须对所有 4 个页面都这样做,并且随着我们折扣用户的增加,这可能会变得太长和平凡。我正在寻找一种方法来绕过这么长的 if/else 语句,并且想知道使用存储过程或方法是否有意义?

标签: c#asp.netasp.net-mvcif-statement

解决方案


我建议在数据库中的用户表或任何适当的表中添加一个折扣字段,并将折扣信息保存在那里。您还可以创建一个新表来保存与不同用户相关的折扣信息,并设法返回折扣值,而不是通过 if/else 语句。


推荐阅读