2016-03-18 35 views
0

我有兩個名稱相同,但參數個數不同的方法(方法重載)。我想將這兩個函數合併爲一個。這可能嗎? 下面是一些代碼:將2重載方法合併爲一個

private void Fill(string ViewStateName, string type1, string type2, 
        string type3, string type4, string type5, string type6, 
        string val1, string val2, string val3, string val4, string val5, string val6, 
        string VCol1, string VCol2, string VCol3, string VCol4, string VCol5, string VCol6, 
        GridView gv, DataTable table, DataTable tableMore, string Sessiontable, 
        string SessiontableMore, string SessionRestTable, string SessionEditTbl) 
{ 
    //code 
} 

private void Fill(string ViewStateName, string type1, string type2, string type3, 
        string type4, string type5, string type6, string type7, string val1, 
        string val2, string val3, string val4, string val5, string val6, 
        string val7, string VCol1, string VCol2, string VCol3, string VCol4, 
        string VCol5, string VCol6, string VCol7, GridView gv, DataTable table, 
        DataTable tableMore, string Sessiontable, string SessiontableMore, 
        string SessionRestTable, string SessionEditTbl) 
{ 
    //code 
} 
+2

如果你的方法做同樣的事情,你可能只是刪除第一個方法(以較少的參數個數一個功能),並在大的initalize空缺參數 – Khazratbek

+0

@AakeningByte舉了一個例子如何做到這一點。 – Khazratbek

回答

1

你只需要定義可選參數

private void Fill(string ViewStateName, string type1, string type2, string type3, 
       string type4, string type5, string type6, string type7, string val1, 
       string val2, string val3, string val4, string val5, string val6, 
       string val7, string VCol1, string VCol2, string VCol3, string VCol4, 
       string VCol5, string VCol6, string VCol7, GridView gv, DataTable table, 
       DataTable tableMore, string Sessiontable, string SessiontableMore = "", 
       string SessionRestTable = "", string SessionEditTbl = "") 
{ 
    //code 
} 
+0

非常感謝您的先生,現在它工作。 –

+0

更新了答案,使用空字符串「」而不是 –

+0

它已經工作先生...... –