【发布时间】:2021-05-19 12:14:18
【问题描述】:
我正在尝试为一个问答网站创建一个奖励系统,其中 5 个答案值得一个奖励。因此,用户每回答 5 个问题,他们就会获得一个奖励,以此类推,他们再次回答接下来的 5 个问题。
现在我有 if 语句,当答案计数为 5 或 10 或 15 等时,用户被重定向到奖励通知,但它看起来不太好,因为我需要为 5,10 做几个 if 语句,15,20,25,30,35,40,45,50,55 等等。
有什么方法可以编写这个代码,也许是一个 foreach 语句或类似的东西?可能每增加5个新答案,这等于1个奖励。
谢谢,如果不清楚,抱歉。让我如何让它更清楚,我是新手。
Code in AnswersController:
public async <TaskIAction> Index()
{
int answerCount = _context.Answers.Where( a => a.UserId == userId).Count();
ViewBag.answerCount = answerCount;
if (answerCount == 5)
{
return RedirectToAction(nameof(RewardsMessage));
}
else if (answerCount == 10)
{
return RedirectToAction(nameof(RewardsMessage));
}
return View()
【问题讨论】:
-
不要将您的代码作为图片发布。请edit 并使用代码格式化工具将您的代码包含为文本。
-
这个问题与asp.net或javascript完全无关,纯c#,请把问题中不相关的标签去掉。
-
截图不是很好看,怎么不试试
Print Screen键呢?它是内置的,方便,提供最好的质量。 -
关于格式化文本和文本图像:请参阅this meta post,其中列出了许多重要的原因。代码的照片或屏幕截图确实对所有人都没有帮助或可读性。
-
@KingKing - 即使是干净的屏幕截图也不能真正接受(请参阅我刚刚在 cmets 中发布的链接) - 非常有限。格式化文本是要走的路。
标签: c# asp.net-mvc asp.net-core entity-framework-core