2015-08-14 49 views
0

我需要将超过10个参数从一种方法传递到另一种方法,所有参数都是不同的类型。如何将超过10个参数从一种方法传递到另一种方法

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

+6

发送一个对象。 – user1666620

+1

将对象(类)中的类似参数组合在一起,然后发送给 – Milen

+3

,如果您有+10参数的函数调用,那么您可能需要重构代码并创建更多函数。更精确地说明你的当前用例,并在需要帮助时显示一些代码 – Eloims

回答

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); 
} 

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

相关问题