今天写代码,碰到个问题,蒙圈了。


问题描述:

从后台传递数据到前台,后台代码如下:

response.Write("IsContract", Count()>0 ? true: false);


前台接受到的数据包含如下字段<IsContract>True</IsContract>,

但是,在前台进行展示的时候,无论如何都是false。


开始以为,解耦的时候,关系对应错误。最后一拍脑门,原来是大小写的原因,哎。


解决办法:

后台传递bool型值的时候,用如下方法:

response.Write("IsContract", Count()>0 ? bool.TrueString.ToLower(): bool.FalseString.ToLower());


原因,在C#中

true.ToString(); // True
false.toString();// False


参考文件已经解释的很明白啦:

http://stackoverflow.com/questions/491334/why-does-boolean-tostring-output-true-and-not-true