看起来只能通过说:
来增加值DataRow someRow = GetRow();
someRow[0] = someRow[0] + 10;
有没有办法在C#中执行此操作?我似乎找不到任何东西......我假设这是因为DataRow.Item会返回一个对象。
DataRow someRow = GetRow();
someRow[0] += 10;
someRow[0] -= 10;
someRow[0] *= 5;
答案 0 :(得分:2)
有没有办法在C#中执行此操作?
不,您首先要将someRow[0]
转换或转换为相应的类型,然后您可以使用加法,乘法等。
以下情况会导致编译错误:
someRow[0] = someRow[0] + 10;
因为someRow[0]
的类型是Object
,而10是整数文字。
正确的方法如下:
someRow[0] = (int)someRow[0] + 10;
答案 1 :(得分:1)
或者你可以在c#中使用TryParse方法,并检查返回的对象是否实际上是一个整数,然后执行所需的操作。
像:
int temp;
Int64.TryParse((String)someRow[0], out temp);
someRow[0] = temp + 10;
您可以通过简单地转换它来将onject转换为int:(int)someRow [0]或使用ConvertTo方法,但上面最不容易出错。