MiB*_*Bol 1 c# linq performance sap
我从外部系统获得的信息总是以下列格式返回给我:

我需要将此信息从object [,]转换为"|"上的数组拆分.我一直在VB中使用LINQ来获取这些信息:
Dim vSAPdataTemp(,) As Object = Local_SAPtableData.Data
Dim vLinq = From TempResult In vSAPdataTemp
Select Value = Array.ConvertAll(TempResult.ToString.Split(RFC_DelimiterChar),
Function(vVal) CObj(vVal.ToString.Trim))
Dim vNewSAPdata() As Object = vLinq.ToArray
Run Code Online (Sandbox Code Playgroud)
但现在我转向C#,我遇到了以下错误:

使用此代码时:
var vSAPdataTemp = Local_SAPtableData.Data;
Local_SAPtableData.FreeTable();
fw.gcCleaner();
Local_SAPtableData = null;
var vLinq = (from TempResult in (vSAPdataTemp as Object[,])
select string strValue = Array.ConvertAll(TempResult.Split(stcVariables.strSapRfcDelimiterChar),
vVal => (vVal as object).ToString().Trim()));
var vNewSAPdata = vLinq.ToArray<string>();
Run Code Online (Sandbox Code Playgroud)
此问题有哪些(如果有)解决方法?
你很可能不得不使用Cast电话:
from TempResult in (vSAPdataTemp as object[,]).Cast<object>()
(...)
Run Code Online (Sandbox Code Playgroud)
那是因为object[,]实现了非泛型IEnumerable,它与LINQ不兼容.(我不知道为什么它在VB.NET中起作用).
| 归档时间: |
|
| 查看次数: |
635 次 |
| 最近记录: |