【发布时间】:2018-08-02 03:31:40
【问题描述】:
我的问题如下,我需要通过数据库检查条件。这意味着在简单的应用程序中,我们检查是否有这样的条件。
private static void Main(string[] args)
{
Console.WriteLine("Enter your age");
var age = int.Parse(Console.ReadLine() ?? throw new InvalidOperationException());
if (5 <= age && age <= 10)
{
Console.WriteLine("Range 5 - 10");
}else if (11 <= age && age <= 20)
{
Console.WriteLine("Range 11 - 20");
}
else if (21 <= age && age <= 30)
{
Console.WriteLine("Range 21 - 30");
}
else
{
Console.WriteLine("Over range");
}
}
假设客户需要动态更改条件,这意味着他需要向系统添加额外的条件,例如,
if 31 <= age && age <= 40 => 范围 31 - 40
在客户端执行此操作时,有时会向系统添加错误条件,例如,
(4 <= age && age <= 15)这个条件不能加,因为系统已经有条件(5 <= age && age <= 10)。当年龄为 7 岁时,这两个条件都将成立。像这种情况下,最好的办法是什么。
我需要将条件存储在我的数据库中,(PS:数据库表结构可以根据你的回答改变)
作为示例表结构
ConditionID Condition Details
con001 5 <= age && age <= 10 Range 5 - 10
con002 11 <= age && age <= 20 Range 11 - 20
con003 21 <= age && age <= 30 Range 21 - 30
请给我一个解决方案来解决这个问题。我如何使用 C# 和 oracle SQL 来做到这一点
【问题讨论】:
-
你想在哪里处理这个代码端或数据库端?
-
@DipteeHamdapurkar 双方都可以,但我认为代码方面最好。但是如果可以的话,数据库方面也很好
-
您正在构建一个规则引擎。您可能认为这不是您正在做的事情,但如果您想要一个例程来验证动态创建的条件,那么您就开始了这一旅程。因此,这将是检查这是否是您想要做的事情的好点,如果是,您是否会更好地使用现有的规则引擎而不是从头开始滚动自己的引擎。
-
@APC 你能提供一个示例代码吗
标签: c# sql .net if-statement