相关疑难解决方法(0)

如何将方法名称作为参数传递?

我刚刚注意到我在ASP.NET应用程序中重复了很多C#代码,所以想要创建一个通用方法.我有一系列这样的私有方法:

private void PopulateMyRepeatedControl()
{
    DBUtil DB = new DBUtil();
    DataTable symbols = GetSelectedSymbols();
    DataTable tradeGrades = GetSelectedTradeGrades();
    DataTable executionGrades = GetSelectedExecutionGrades();        

    chtMyRepeatedChart.DataSource = DB.MyRepeatedCall (
        int.Parse(txtStartBalance.Text),
        int.Parse(ddlTradeTypes.SelectedValue),
        ddlRepeatedTrades.SelectedValue,
        radSide.SelectedValue,
        ddlTradeSetups.SelectedValue,
        symbols,
        ddlChartTimeFrames.SelectedValue,
        int.Parse(ddlHours.SelectedValue),
        int.Parse(ddlYears.SelectedValue),
        int.Parse(ddlMonths.SelectedValue),
        int.Parse(ddlDays.SelectedValue),
        int.Parse(ddlNumSCs.SelectedValue),
        txtDateFrom.Text,
        txtDateTo.Text,
        tradeGrades,
        executionGrades,
        int.Parse(txtMinProfitPips.Text),
        int.Parse(txtMaxProfitPips.Text));

    chtMyRepeatedChart.DataBind();
}
Run Code Online (Sandbox Code Playgroud)

所以,我想替换DB.MyRepeatedCall,chtMyRepeatedChart并将它们作为参数传递给泛型函数.那可能吗?我的表单上有很多图表,它们使用相同数量的参数.

谢谢

更新 根据Frederik的解决方案,我做到了这一点:

private delegate IEnumerable<DataTable> GetDataSource(
    int TradeType,
    string RepeatedTrades,
    string Side,
    string TradeSetup,
    DataTable symbols,
    string ChartTimeFrame,
    int Hour,
    int Year,
    int Month,
    int Day,
    int NumSCs, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net c#-4.0

4
推荐指数
1
解决办法
1828
查看次数

标签 统计

asp.net ×1

c# ×1

c#-4.0 ×1