簡體   English   中英

使用C#從ColdFusion QueryBean獲取值的最佳方法是什么

[英]What is the best way to get values from a ColdFusion QueryBean with C#

我必須調用返回QueryBean的ColdFusion Web服務。 它返回一組具有我要尋找的值的復雜數組。 當我打電話時,我得到了期望的數組中的所有數據,但是現在我試圖獲取數據,它不斷告訴我我缺少了某些東西,或者我無法對對象使用索引。

我在VS2010中創建了一個稱為DAM_Search的Web引用,並使用此命令進行調用。

DAM_Folder.folderService obj_Folder = new DAM_Folder.folderService();
DAM_Folder.QueryBean qBean = bj_Folder.getfolder("1-Key", str_Folder_ID);

我得到的是qBean,其中包含4個數組,前兩個數組是

qBean.columnList[10]
qBean.columnListField[10]

並包含數據行中使用的字段的名稱。 接下來有

qBean.data[4]
qBean.dataField[4]

這是返回數據的地方。 在上面的示例中,qBean返回4行數據。 數據位於一個數組中,其中具有columnList[10]命名的列的值。

我認為,由於一張圖片的價值不超過1000字,所以這可能會有所幫助。

qBean捕獲
(來源: sapp-family.com

我現在想做的是從qBean.data[0][0]的內部數組獲取數據。 我在立即窗口中嘗試? qBean.data[0] ? qBean.data[0]它返回正確的值數組。

我嘗試了以下

? qBean.data[0][0] 
"Cannot apply indexing with [] to an expression of type 'object'"

? qBean.data[0].[0]
Identifier expected

? qBean.data[0,0]
Wrong number of indices inside []; expected 1

因此,我的Stackoverflow同伴用戶,我需要做什么來獲取該對象的值? 我認為這很簡單,我只是在想一想,但這只是讓我感到困惑。

我會嘗試qBean.data [0] [0] .toSting()

好的,所以我得到了跟蹤,沒有回過頭來解決原始問題。 對於那個很抱歉...

我對這個問題的解決方案是將qBean.Data[0]IEnumerable對象。 然后,我通過一個foreach循環來運行它,該循環將數據饋送到一個數組中,然后可以將其傳遞回調用函數。 例如;

string[] FileData = new string[0];            
foreach (var var_Value in (IEnumerable)qBean.data[0])
        {
            Array.Resize<string>(ref FileData, FileData.Length + 1);
            FileData[FileData.Length-1] = var_Value.ToString();
        }

現在我知道這工作,我會從QueryBean其他數組拉數量和設置FileData[]規模之前,我開始foreach所以我沒有到陣列的21倍與復制Array.Resize<> 雖然目前我正在使用的數據很小,但我永遠不知道將來的數據。

提姆

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM