如何将字段指定为函数C#的参数?

时间:2015-12-06 15:34:32

标签: c# wcf

我有一个[Operation Contract],其中描述了在WCF服务中注册新用户的函数:

[OperationContract]
boolean Register(string name, string password);

此函数接受用户的两个参数namepassword。 我将来如何扩展这些参数,例如,如果我想为寄存器功能或更多参数添加第二个名称?

我可以做以下事情:

boolean Register(string name, string password, string secondName);

但如果params更多20?

2 个答案:

答案 0 :(得分:2)

如果您不介意违反要更改的操作的合同,可以将一些(超过20个)参数合并到一个类中。

在编写具有大量参数的方法时,这通常是一种很好的做法(另请参阅What's the best way to refactor a method that has too many (6+) parameters?)。

但是,如果要在WCF调用中使用它,则可能需要向该类添加[DataContract]属性。

答案 1 :(得分:1)

通过使用params关键字,您可以指定采用可变数量参数的方法参数。 喜欢 -

boolean Register(params string[] list);