2013-05-15 59 views
-1

當運行該代碼我得到的錯誤:(對象)是一個場,但使用像「方法」

錯誤1「EPSInvoice_ServiceLibrary.EPS_Service.tr_bl」是「字段」,但使用像「方法」

它好工作在VS.net但我轉換爲C#。 任何幫助,將不勝感激。 感謝

下面的代碼:

public class EPS_Service : IEPS_Service 
    { 
     List<input_params> Users = new List<input_params>(); 
     List<token_data> token_data = new List<token_data>(); 
     public decimal cal; 
     object tr_bl; 
     string branch; 


     public void User_Login(input_params inputparams) 
     { 
      EPS30Ora.EPS30Svr svr = new EPS30Ora.EPS30Svr(); 

       if (svr.LogOnEx("EDEESTE", inputparams.VSID, inputparams.Username, inputparams.Password, "EPS30Ora", ref inputparams.ck) == 0) 
       { 
        try 
        { 
         Users.Add(inputparams); 
         svr.PrepareByMoney(inputparams.ck, 1, inputparams.meter_number, 10, 0, ref cal); 
         tr_bl = svr.GetInvoiceData(inputparams.ck, svr.Confirm(inputparams.ck)); 
         branch = tr_bl(0)(1); 
         token_data.Add(new token_data() { transfer_number = "0000000" }); 
        } 
        catch (System.Runtime.InteropServices.COMException ex) 
        { 

        } 
       } 
     } 
+2

什麼'分支= tr_bl(0)(1);'怎麼辦呢? –

+0

感謝您的回覆。這裏是GetInvoiceData()的定義:公共虛擬動態GetInvoiceData(字符串ClientKey,串TrnId)EPS30Ora.EPS30SvrClass的 會員。我是C#和vb.net的新手,它很好地聲明瞭一個名爲tr_bl的對象,然後用tr_bl(0)(1)來檢索它的值。 GetInvoiceData返回發票結構。謝謝你的幫助。 – user2386560

回答

3

你的數組索引需方括號:

branch = tr_bl[0][1]; 
+0

你好。謝謝你的回覆。當改變方括號我得到的錯誤:「無法適用與[]的索引類型爲‘對象’的表情我是否需要轉換???我是stucked東西感謝 – user2386560

+0

是的,你需要將其轉換爲任何。返回類型'GetInvoiceData()'具有例如,如果它是類型的二維陣列'int',就需要做'分支=(INT [] [])tr_bl [0] [1];' 。 – qJake

+0

感謝您的回覆這裏是GetInvoiceData()的定義:公共虛擬動態GetInvoiceData(字符串ClientKey,串TrnId)EPS30Ora.EPS30SvrClass的 會員我是新來的C#和vb.net它工作得很好聲明對象命名tr_bl然後用tr_bl檢索其值(0)(1)爲例。GetInvoiceData返回發票結構基金。感謝您的幫助。 – user2386560

相關問題