.net 动态IF语句

tester222121 2014-04-25 05:41:19
现在遇到一个问题,根据用户所给的条件生成一段if语句
//客户系统中的逻辑数据(无法修改)
string srcData="@:^电视机>50|或者^价格>=5000|且^状态=已安装";
//我将他截成
string[] strArr=new string[]{"且^电视机>50","或者^价格>=5000","且^状态=已安装"}

我们对接系统中页面中对应控件
txtSalesNum
txtPrice
txtStatus
txtSalesDate

现在要动态根据客户所给的srcData生成IF条件并进行处理数据
例如:

//不考虑逻辑是否正确的情况下,前两个条件合并前后要添加();红色标致
//当:string srcData="@:且^电视机>50|或者^价格>=5000|且^状态=已安装";
生成if((Parse.Int(txtSalesNum.Text)>50 || Parse.Int(txtPrice.Text)>5000)&& txtStatus.Text="已安装"){}else{}
//当: string srcData="@:且^洗衣机=>50|且^洗衣机<100|且^日期>2013-10-1|且^日期<2013-10-7";
生成if((Parse.Int(txtSalesNum.Text)>=50 && Parse.Int(txtSalesNum.Text)<100 ) && Convert.ToDateTime(txtSalesDate.Text)>='2013-10-1' && Convert.ToDateTime(txtSalesDate.Text)<'2013-10-7'){}else{}
...全文
278 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
祥子爱游戏 2014-04-29
  • 打赏
  • 举报
回复
引用 2 楼 banian_cn 的回复:
看了半天才好像明白,你是想用客户端的 且^电视机>50|或者^价格>=5000|且^状态=已安装 转变成 IF语句? 为什么不在客户端提供一个查询条件高级搜索?直接自动生成条件传过来。 既然都是 txtSalesNum 你干吗还区分电视机 洗衣机呢? 直接是 数量>50 用数量代替具体的物品名称,不然你每种东西你都得判断。 你一定要用这种文字的话,第一个 且,或者根本就是没用的。 前2个是必须合并的。 将数组的每个值用 ^ 分隔,第一个且或者条件不用判断。 "("开头拼接, 之后的中文且替换成&& 或者 替换成 || 拼接就可以了。第二个条件结束拼接 ")"
我也感觉是这样,楼主的方法太复杂。还要自己去判断条件,可能还要分词
Banianer 2014-04-25
  • 打赏
  • 举报
回复
看了半天才好像明白,你是想用客户端的 且^电视机>50|或者^价格>=5000|且^状态=已安装 转变成
IF语句?
为什么不在客户端提供一个查询条件高级搜索?直接自动生成条件传过来。
既然都是 txtSalesNum 你干吗还区分电视机 洗衣机呢?
直接是 数量>50 用数量代替具体的物品名称,不然你每种东西你都得判断。

你一定要用这种文字的话,第一个 且,或者根本就是没用的。
前2个是必须合并的。
将数组的每个值用 ^ 分隔,第一个且或者条件不用判断。
"("开头拼接, 之后的中文且替换成&& 或者 替换成 || 拼接就可以了。第二个条件结束拼接 ")"
  • 打赏
  • 举报
回复
可能你业余爱好写程序,建议上一个编程的课程。这种东西是“正常的if逻辑判断”流程,而不是什么“动态if语句”。
第1章 Visual Basic.NET概述 1.1 .NET框架简介 1.2 Visual Basic.NET的发展和特点 1.2.1 VB.NET的发展 1.2.2 VB.NET的特点 1.3 Visual Basic.NET的安装与启动 1.3.1 Visual Studi0.NET 2005的安装 1.3.2 VB.NET 2005的启动 1.4 VS.NET的集成开发环境 1.4.1 VS.NET窗口组成 1.4.2 VS.NET集成开发环境中的窗口 1.5 创建VB.NET应用程序的基本步骤 1.6 系统环境设置 1.7 VB.NET的帮助系统 习题1 第2章 面向对象的基础知识和常用控件 2.1 面向对象的基本概念 2.1.1 对象和类 2.1.2 属性、事件和方法 2.2 窗体和基本控件 2.2.1 窗体 2.2.2 控件的基本操作 2.2.3 基本控件 2.3 综合实训 习题2 第3章 VB.NET程序设计语言基础 3.1 数据类型 3.2 变量 3.2.1 变量名的命名规则 3.2.2 变量的声明 3.2.3 变量的作用域 3.3 常量 3.4 运算符 3.5 表达式 3.6 VB.NET常用内部函数 3.6.1 数值函数 3.6.2 字符函数 3.6.3 日期时间函数 3.6.4 类型转换函数 3.6.5 数据的输入函数(InputBox函数) 3.6.6 数据的输出函数(MsgBox函数) 3.7 VB.NET的编码规则 3.8 综合实训 习题3 第4章 VB.NET基本控制结构 4.1 顺序结构 4.2 选择结构 4.2.1 行If语句 4.2.2 块If语句 4.2.3 If语句的嵌套 4.2.4 多分支控制结构 4.3 循环结构 4.3.1 For循环结构 4.3.2 Do循环结构 4.3.3 While循环结构 4.3.4 循环的嵌套 4.3.5 Exit语句 4.4 程序调试 4.5 综合实训 习题4 第5章 数组与过程 5.1 数组 5.1.1 一维数组 5.1.2 二维数组 …… 第6章 VB.NET的可视化组件 第7章 VB.NET的界面设计 第8章 VB.NET数据库访问技术 第9章 文件处理 第10章 VB.NET多线程机制 第11章 使用ASP.NET开发Web窗体技术 第12章 VB.NET程序案例应用 参考文献

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧