C# 动态SQL总是输出相同的数据

C# 动态SQL总是输出相同的数据,c#,sql,C#,Sql,我遇到了一个严重的问题。所以我的问题是,实际上我的表单中有3个复选框(C#): 以下是我的简短sql代码片段: AND ( <isNotEmpty property="Apple"> M.SUPPLIER = 'a' OR </isNotEmpty> <isNotEmpty property="Orange"> M.SUPPLIER = 'b' OR &l

我遇到了一个严重的问题。所以我的问题是,实际上我的表单中有3个复选框(C#):

以下是我的简短sql代码片段:

AND (

        <isNotEmpty property="Apple">
          M.SUPPLIER = 'a' OR
        </isNotEmpty>
        <isNotEmpty property="Orange">
          M.SUPPLIER = 'b' OR
        </isNotEmpty>
        <isNotEmpty property="Banana">
          (M.SUPPLIER != 'a' and M.SUPPLIER != 'b')
        </isNotEmpty>
)
和(
M.供应商=‘a’或
M.供应商=‘b’或
(M.SUPPLIER!=“a”和M.SUPPLIER!=“b”)
)
因此,我只想在取消选中
Orange
Banana
复选框时查看苹果数据,或者如果选中
Orange
复选框,则只会显示
Orange
数据。但我的代码的问题是,它总是输出相同的数据,即使我全部选中或取消选中它们


提前感谢各位。

看看c代码生成的sql,你可能会明白为什么会得到你想要的。@DanBracuk谢谢。我会调查的。
AND (

        <isNotEmpty property="Apple">
          M.SUPPLIER = 'a' OR
        </isNotEmpty>
        <isNotEmpty property="Orange">
          M.SUPPLIER = 'b' OR
        </isNotEmpty>
        <isNotEmpty property="Banana">
          (M.SUPPLIER != 'a' and M.SUPPLIER != 'b')
        </isNotEmpty>
)