C#数组数据传输到ushort[]
C# Array data transfer to ushort[]
我写了一个方法来获取数据,如下所示:
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);
Result当我MonitorDatagridToArray()
我的registersArray
可以得到一个int[7]
数据,但是在调用之后,registers
变量结果全是0
。请告诉我如何处理它,在此先感谢!
您正在更改 registersArray
的 local 引用。
您的代码应如下所示:
public ushort[] DatagridToArray()
{
return myModulesList.OrderBy(mod => mod.Address).Select(mod => mod.ParamValue).ToArray();
}
然后像这样使用:
registers = this.DatagridToArray();
我写了一个方法来获取数据,如下所示:
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);
Result当我MonitorDatagridToArray()
我的registersArray
可以得到一个int[7]
数据,但是在调用之后,registers
变量结果全是0
。请告诉我如何处理它,在此先感谢!
您正在更改 registersArray
的 local 引用。
您的代码应如下所示:
public ushort[] DatagridToArray()
{
return myModulesList.OrderBy(mod => mod.Address).Select(mod => mod.ParamValue).ToArray();
}
然后像这样使用:
registers = this.DatagridToArray();