我正在尝试创建一个查询。这是代码
string wherequery = "";
int fromcode = Convert.ToInt32(CodeTextBox.Text);
int count = Convert.ToInt32(CountTextBox.Text);
for (int i = 0; i < count; i++)
wherequery += ("'" + (fromcode + i).ToString().PadLeft(8,'0') + "',");
wherequery = wherequery.TrimEnd(",");
我正在使用 for 循环来创建
IN
查询。可以通过 LINQ 吗?输出应该是
'0000000087','0000000088','0000000089'
第二件事,我从像
0000000087
这样的文本框值中获取代码。当我使用 Convert.ToInt32
将其转换为 int 时,前面的 0 消失了。是否有可能 0 不应该消失,因为前面的 0 的数量可能会有所不同?
最佳答案
不需要 .PadLeft(8,'0')
会导致不必要的前导零。
尝试跟随。
var whereQueryFormat = "Whre columnName IN ({0})";
var wherequery = string.Join
(",",
Enumerable.Range(1, count)
.Select(i => "'" + fromcode + i + "'")
);
wherequery = string.Format(whereQueryFormat, wherequery);
关于c# - C#中的增量计数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34986435/