2014-04-04 48 views
-2

有人可以給我這個問題的建議,所以我在做什麼是接收用戶名和密碼作爲參數。 如果這是好的(檢查憑據)我想返回它的QR碼,如果不是,我想返回字符串(或布爾或無效)。C#返回語句動態確定

他們的解決方案是?那麼有可能不知道return語句?

+0

我發現返回位圖的例子,但是這是不是相關的,只是想知道的方式來動態確定返回 – user3323821

+0

您可以創建的getter/setter類,並返回類的對象。 –

+0

您可以返回空的QR碼對象來指示失敗。或者你可以拋出異常 –

回答

1

創建一個對象將被返回的類。在那個類中你可以添加屬性。

class ReturnClass 
{ 
    public string QRCode { get; set; } 

    public bool IsOK { get; set; } 
} 

public ReturnClass MainMethod() 
{ 
    ReturnClass mrc = new ReturnClass(); 

    // Do checks and populate value of ReturnClass 

    return mrc; 
} 
+0

好,謝謝!將在幾分鐘內接受答案:) – user3323821

+0

這可以防止需要找出你在客戶端發回的是什麼類型,但是是否還有很多需要它總是返回一個布爾呢? – jwddixon

+1

你可以跳過bool屬性並直接使用'String.IsNullOrEmpty(QRCode)' –

0

只返回一個對象。然後,您可以返回您喜歡的任何對象,並在請求者一方檢查返回的類型。

public object returnObject(string user, string pwd) 
{ 
    if(checkCredentials(user,pwd)) 
    return new QRcode(usr,pwd); 

    else 
    return false; 
}