簡體   English   中英

將動作類型作為參數傳遞給C#

[英]Passing an action type as a parameter c#

通過將ActionType作為參數傳遞,是否可以將以下兩種方法組合為一個新方法? 我想將新的單一方法稱為另外兩個不同的方法(提現和存款)。

class Account
{

    enum ActionType
    {
        Withdraw,
        Deposit,
    }

    private void WriteDeposit()
    {
        StreamWriter outputFile;
        outputFile = File.AppendText("account.log");

        outputFile.WriteLine("{0},{1}", DateTime.Now, ActionType.Deposit);
        outputFile.Close();
    }

    private void WriteWithdraw()
    {
        StreamWriter outputFile;
        outputFile = File.AppendText("account.log");

        outputFile.WriteLine("{0},{1}", DateTime.Now, ActionType.Withdraw);
        outputFile.Close();
    }

根據您的問題,以下應該起作用。

class Account
{

    enum ActionType
    {
        Withdraw,
        Deposit,
    }

    public void Withdraw()
    {
        WriteAction(ActionType.Withdraw);
    }

    private void WriteAction(ActionType action)
    {
        StreamWriter outputFile;
        outputFile = File.AppendText("account.log");

        outputFile.WriteLine("{0},{1}", DateTime.Now, action);
        outputFile.Close();
    }
}

暫無
暫無

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

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