我必须将VB6中的一些代码翻译成C#。 rs
是一个Recordset对象:
If rs.Fields("mycolumn") < 5 Then
myarray(Val(rs.Fields("mycolumn"))) = myarray(Val(rs.Fields("mycolumn"))) + 1".
End If
这里的问题是比较列和数字,因为列是一个字符串。我已经尝试过VisualBasic Val() - 方法,但它的行为并不完全一样吗?
我使用了它,但它没有提供与VB6相同的表达式。有些记录通过,而不应该通过。
if (Microsoft.VisualBasic.Conversion.Val(rs.Rows[k]["mycolumn"]) < 5)
{
}
答案 0 :(得分:0)
您应该使用int.Parse或int.TryParse将字符串转换为数字,然后您可以进行比较:
if(int.Parse(rs.Rows[k]["mycolumn"]) < 5) { ... }