我只是想知道其他开发人员如何解决从方法中获得2或3个答案的问题.
1)返回一个对象[]
2)返回一个自定义类
3)对多个变量使用out或ref关键字
4)写或借用(F#)一个简单的Tuple <>泛型类
http://slideguitarist.blogspot.com/2008 /02/whats-f-tuple.html
我正在研究一些可以刷新数据的代码.从我想要传回的刷新方法(1)刷新开始时间和(2)刷新结束时间.
在以后我可能想要传回第三个值.
思考?关于这个主题的开源.NET项目的任何好的做法?
这完全取决于结果.如果它们彼此相关,我通常会创建一个自定义类.
如果它们没有真正相关,我要么使用out参数要么拆分方法.如果一个方法想要返回三个不相关的项目,那可能做得太多了.例外情况是,当您在网络服务边界或其他"纯粹"API可能过于繁琐的情况下进行交谈时.
两个,通常4)
更重要的是,2)
您的问题指出您将来可能会返回更多数据,因此我建议您实现自己的类来包含数据.
这意味着即使您传递的对象的内部表示发生更改以容纳更多数据,您的方法签名也将保持不变.出于可读性和封装原因,它也是一种很好的做法.