我有一个带有以下签名的方法:
bool DoSomething();
Run Code Online (Sandbox Code Playgroud)
我想把它改成这个:
bool DoSomething(IList<int> newIDs);
Run Code Online (Sandbox Code Playgroud)
布尔值和ID列表彼此不相关.新方法包含一个包含新ID列表的额外输出.这是不好的做法吗?在这种情况下返回多个值的正确方法是什么?
您还可以"包装"对象内的所有返回值:
public class Payload
{
public List<int> NewIDs { get; set; }
public bool Status { get; set; }
}
//Use Payload class
public Payload DoSomething(...){...}
Run Code Online (Sandbox Code Playgroud)
我认为在决定特定模式之前理解返回值的语义是很重要的.如果您使用详细信息编辑问题,我也会提供更多见解.
干杯
| 归档时间: |
|
| 查看次数: |
68 次 |
| 最近记录: |