【发布时间】:2011-04-18 04:55:53
【问题描述】:
早上好。
我有以下方法用来尝试带回布尔值:
public static bool GetShowCatSubProdStatus(string memberid, string username)
{
MyEnts showcatsubprodstatus = new MyEnts.PDC_VDSOREntities35();
var r = from p in showcatsubprodstatus.tblKeyAccountInfoes
where p.MemberID == memberid && p.UserName == username
select p.ShowCatSubProd;
return r.Any();
}
当我调用这个方法并调试它时,结果是正确的。但是,当我在页面加载中运行此方法时,虽然方法结果返回了正确的结果,但当我单步执行时,布尔值会发生变化!
bool showcatsubprodstatus = MyEnts.GetShowCatSubProdStatus(_memberid, _username);
if (showcatsubprodstatus != true)
{
panCatSubProd.Visible = false;
}
谁能解释这里发生了什么以及我如何解决这个难题?!
PS:对不起,我很厚。
编辑 - 对,将其缩小到变量。无论方法结果如何,它总是返回“真”?!?!
【问题讨论】:
-
你能确认它的范围是一个变量(不是一个字段)。另外,您是否在其他任何地方使用
showcatsubprodstatus,尤其是在 lambda、LINQ 表达式或匿名方法中? -
你好 Marc - 是的,它的作用域是一个变量,除了上面的 if 语句之外,showcatsubprodstatus 没有在其他任何地方使用。
标签: c# boolean boolean-logic