我编写了一个获取数据的方法,如下所示:
public void DatagridToArray(Array registersArray)
{
registersArray = myModulesList.OrderBy(mod => mod.Address).Select(mod => mod.ParamValue).ToArray();
}
现在在我的用法中,我需要数据作为 ushort[],所以我声明了一个变量:
public static ushort[] registers = new ushort[20];
当我通过以下方式调用此方法时:
this.DatagridToArray(registers);
当我监控DatagridToArray()
时的结果,我的registersArray
可以获得int[7]
数据,但是在调用之后,registers
变量变成了所有0
。请告诉我如何处理它,提前谢谢!
您正在更改registersArray
的本地引用。
您的代码应如下所示:
public ushort[] DatagridToArray()
{
return myModulesList.OrderBy(mod => mod.Address).Select(mod => mod.ParamValue).ToArray();
}
然后像这样使用:
registers = this.DatagridToArray();