我必须从像这样的字符串值构建查询字符串:
connString += "INSERT INTO (...) VALUES ( "+
_cd.userName "," +
//and there i'd like to use ?: operators:
_cd.lastLogin == "Null" ? "null" : _cd.lastLogin ","
所以我的查询看起来像 INSERT INTO (...) VALUES ('name', null, (...))
但是当我使用它时,它会剪断我的弦,所以看起来
",null,1,2,'name', (...)";
好吧,我知道我可以使用var a,b,c,d然后检查是否(_cd.lastLogin == "Null) a = null
将其放入字符串中,但是有很多变量。
什么是正确的使用方式?
@EDIT:代码:
string query = "INSERT INTO PersonLogin(...) " + Environment.NewLine +
"VALUES (" + _cD.userID + ","
+ "'" + _cD.number + "',"
+ "'" + _cD.dateCreate + "','"
+ _cD.lastLogin == "Null" ? ",null," : _cD.lastLogin + "',"
+ _cD.taken + ","
+ _cD.canLogin + ""+ Environment.NewLine;
?
运算符的优先级低于+
运算符。所以,你需要圆括号周围的使用?
和:
。
connString += ... + (_cd.lastLogin == "Null" ? "null" :"'"+ _cd.lastLogin) +"'" ...;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句