私は単にすべてをループしようとしています
結果オブジェクト内のitems[x](私が所有するこのオブジェクトを返す関数で、基本的に文字列のリストのみを返します)。これは、Web サービスの目的で作成した vb.net 関数からのものです。foreach ループを実行するのが最も簡単で効率的な方法だと思っていましたが、クラスが IEnumerable を実装していないため実行できません。ただし、iEnumerable を使用せずにこれをループする簡単な方法がまだあるかどうか疑問に思っています。どうぞよろしくお願いいたします。これは、クラスが私の関数によって返されるように見えるものです。
Public Class GetErrors
Public FWWDIR_ERR_VENDOR As String = String.Empty
Public FWWDIR_ERR_INVOICE As String = String.Empty
Public FWWDIR_ERR_ACCOUNT As String = String.Empty
Public FWWDIR_ERR_FUND As String = String.Empty
Public FWWDIR_ERR_ORGN As String = String.Empty
Public FWWDIR_ERR_PROG As String = String.Empty
Public FWWDIR_ERR_ADDRSS_TYP As String = String.Empty
Public FWWDIR_ERR_ADDRSS_SEQ As String = String.Empty
Public FWWDIR_ERR_LOCATION As String = String.Empty
Public FWWDIR_ERR_ACTIVITY As String = String.Empty
Public FWWDIR_ROW As String = String.Empty
Public service_error As String = String.Empty
Public FWWDIR_ERR_PO As String = String.Empty
Public FWWDIR_ERR_CHKVEND As String = String.Empty
Public FWWDIR_ERR_FSYR As String = String.Empty
Public FWWDIR_ERR_FSPD As String = String.Empty
Public FWWDIR_ERR_ONTM_VEND As String = String.Empty
Public FWWDIR_ERR_ONTM_ADRS1 As String = String.Empty
Public FWWDIR_ERR_ONTM_CITY As String = String.Empty
Public FWWDIR_ERR_ONTM_STATE As String = String.Empty
Public FWWDIR_ERR_ONTM_ZIP As String = String.Empty
Public FWWDIR_ERR_ENCUM_AMT As String = String.Empty
Public FWWDIR_ERR_ENCUM_VEND As String = String.Empty
Public FWWDIR_ERR_ITEM_ERROR As String = String.Empty
Public FWWDIR_POHD As String = String.Empty
End Class
私が試した短いコードスニペット。
ServiceApUtils _apUtils = new ServiceApUtils();
var results = _apUtils.ADP_Processor(l_taxcode.ToArray(), l_amount.ToArray(), l_row.ToArray());
//Response.Write(results[0].)
if (results[0].service_error!="")
{
Response.Write(results[0].service_error);
}
else if (results.Count > 0)//
{
for (int x = 0; x < results.Count; x++ ) //typecast x a get error to loop the results
{
TableRow tr = new TableRow();
Table1.Rows.Add(tr);
foreach (string value in results[x])//fails here with Ienumerable error
{
TableCell tc = new TableCell();
tc.Text = results[x].FWWDIR_ROW + results[x].FWWDIR_ERR_INVOICE + results[x].FWWDIR_ERR_ACCOUNT;
tr.Cells.Add(tc);// = new TableCell();
}
}
}
iEnumerableエラーを何を試してもエラーが発生するか、各配列項目内でループする方法がわかりません。
クラスを戻り値として使用する関数はこれを行っています
Public Function ADP_Processor(
ByVal w_taxcode As String(), _
ByVal w_Amount As String(), _
ByVal w_row As String()) As List(Of GetErrors)