如何将10个以上的参数从一个方法传递到另一个方法

时间:2015-08-14 09:50:16

标签: c#

我需要将10个以上的参数从一个方法传递到另一个方法,所有参数都是不同的类型。

如果我将它们作为参数传递,它看起来不太好。

1 个答案:

答案 0 :(得分:3)

创建如下所示的类:

public class ParamObject 
{
    public string Blah1 { get; set; }
    public DateTime Blah2 { get; set; }
}

实例化它并在你的方法中使用它。

public void DoStuff (ParamObject uglyRecord)
{
    //do stuff...
}

public void CallStuff()
{
    ParamObject uglyRecord = new ParamObject();
    uglyRecord.Blah1 = "things";
    uglyRecord.Blah2 = DateTime.Now();

    DoStuff(uglyRecord);
}

然而,接受大量参数或复杂对象的方法可能表明该方法做得太多,应该重构为几个更小更简单的方法。