c# - 带有 OR 条件的 if 语句逻辑
问题描述
我必须测试一个条件,当 的值dr["QUALITY"].ToString()
不是“A”或 的值dr["QUALITY"].ToString()
不是“D”时,只应执行 if 块。但是if
当值为“A”时执行块代码。
string test = dr["QUALITY"].ToString();
if ((!dr["QUALITY"].ToString().Equals("A")) || (!dr["QUALITY"].ToString().Equals("D")))
{
dr["QUALITY_GRD"] = Calc_Rank(Convert.ToInt32(dr["QUALITY"].ToString()), 0);
dr["QUALITY_PT"] = Calc_Grade(dr["QUALITY_GRD"].ToString(), 1);
}
else
{
dr["QUALITY_GRD"] = "";
dr["QUALITY_PT"] = "";
}
这里if
当值为“A”时执行块代码。我不明白代码有什么问题。请建议。谢谢你!!!
解决方案
在你的情况下,你的第二部分是什么QUALITY
时候- 陈述"A"
if
(!dr["QUALITY"].ToString().Equals("D"))
是真的
所以你的代码应该是这样的
string quality = dr["QUALITY"].ToString();
if (quality != "A" && quality != "D")
{
dr["QUALITY_GRD"] = Calc_Rank(Convert.ToInt32(quality), 0);
dr["QUALITY_PT"] = Calc_Grade(dr["QUALITY_GRD"].ToString(), 1);
}
else
{
dr["QUALITY_GRD"] = "";
dr["QUALITY_PT"] = "";
}
推荐阅读
- reactjs - 要使用 SmartCard 身份验证制作 React 应用程序,我应该使用 pkcs11 吗?
- jquery - 如何知道拖动了哪个类draggable
- excel - 函数问题:Excel VBA 中的日期过滤器
- c# - 如何在C#winform中使用相对地址读取文件
- rest - 为同一个 REST 资源混合不同的 2xx 响应代码
- c# - 与 C# 中的泛型参数混淆
- r - 预测和应用功能
- python - R markdown 使用不同的配色方案来区分 r 和 python 代码块
- c++ - 查找 JSON 文档中所有值的所有路径
- swift - 如何将 iPad 屏幕分成 4 等份?